Hey all,
I've got a work-around for this particular problem but would like to know if there is a cleaner way to solve my problem and/or an explanation of why this happens.
My problem: I use patches to fix bugs and/or add features to our software. If a .dll has had an interface change/addition, its dependant executables will crash (I understand why this happens).
Workaround: I currently delete the file and then reinstall it and allow InstallShield to register it.
Concerns: I do not re-register any components because I've always had some odd problems when doing this. ie. files disappear, file is there but not registered, two files are there, etc.
If I know that the interface has changed, I can easily put my work-around into effect. Unfortunately, the other developers do not always give me a heads up when this happens (who does). Now I could just automatically erase all the files that need registration and reinstall-reregister, but I don't believe that's the best solution. (what happens when files are locked, for instance?)
Anybody have any cleaner solutions, words of wisdom, explanations, or home remedies for curing developer apathy (such as large clubs)?
This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Re-registration errors
Started by
Xitch13
, Oct 11 2002 20:21
3 replies to this topic
Posted 11 October 2002 - 20:21
There is great chaos under heaven, and the situation is excellent. (Mao Tse Tung)
Posted 11 October 2002 - 23:54
One idea. Drop the whole concept of having IS register your files and instead do it manually in the magical order of the dependencies which either you or your developers need to figure out.
Then run this silent registration process (i.e. LaunchAppAndWait("regsvr32", TARGETDIR ^ "First.dll /s", WAIT);, etc.) after every patch.
If you need be you can even unregister them by throwing a /u in there.
If this process is common enough you can even create batch files to do all this and just call those from your InstallScript.
Then run this silent registration process (i.e. LaunchAppAndWait("regsvr32", TARGETDIR ^ "First.dll /s", WAIT);, etc.) after every patch.
If you need be you can even unregister them by throwing a /u in there.
If this process is common enough you can even create batch files to do all this and just call those from your InstallScript.
Posted 14 October 2002 - 14:40
Thanks for your reply TacoB.
I have tried to manually re-register the components after installation, but ran into the problems I described before.
I will, however, try to un-register the file, replace it, then re-register it and see how that goes.
Thanks for the info.
I have tried to manually re-register the components after installation, but ran into the problems I described before.
I will, however, try to un-register the file, replace it, then re-register it and see how that goes.
Thanks for the info.
There is great chaos under heaven, and the situation is excellent. (Mao Tse Tung)
Posted 14 October 2002 - 17:35
Yes, I noticed your earlier problems which manual registration which is why I mentioned the magical order of the dependencies.
In any case, I wish you success in your attempt.
In any case, I wish you success in your attempt.