Why the package should not have self reg entries
0 Comments
[ + ] Show comments
Answers (8)
Please log in to answer
Posted by:
anonymous_9363
15 years ago
If there's one lesson to learn here, it's that you should never use vendor MSIs as any guideline on how to package properly.
For me, the biggest single reason to not use self-registration is that your package may then rely on the presence of dependencies. That is to say, if a DLL/OCX has a dependency which isn't present on the target, self-registration (or the even worse route, a CA calling RegSvr32 or MSIExec /y) will fail.
And BTW, there's no need to shout :)
For me, the biggest single reason to not use self-registration is that your package may then rely on the presence of dependencies. That is to say, if a DLL/OCX has a dependency which isn't present on the target, self-registration (or the even worse route, a CA calling RegSvr32 or MSIExec /y) will fail.
Posted by:
sanhivi
15 years ago
Posted by:
Yaduveer
15 years ago
You will find, lot of information on Appdeploy related to this topic. Just search...
The main reason between, self registration, and adding advertising registries in the package is,
"Self registration means, at the time of installation, it will use regsvr32.exe to register files, as well as registration will be depending upon dependencies as told by vbscab. Using regsvr32.exe is same like you register it manually. Only difference will be same command will be executed through selfreg tables. So Microsoft does not guarantee you, that at the time of uninstallation or rollback, all the registered dlls will be un-register successfully. If you import advertising registries then you will get a prompt to import them through proper advertising tables. You need to select 'yes'. So these advertising registries will be like a part of that msi databse, so even at the time of failures, rollback, uninstallation, things will work fine"
The main reason between, self registration, and adding advertising registries in the package is,
"Self registration means, at the time of installation, it will use regsvr32.exe to register files, as well as registration will be depending upon dependencies as told by vbscab. Using regsvr32.exe is same like you register it manually. Only difference will be same command will be executed through selfreg tables. So Microsoft does not guarantee you, that at the time of uninstallation or rollback, all the registered dlls will be un-register successfully. If you import advertising registries then you will get a prompt to import them through proper advertising tables. You need to select 'yes'. So these advertising registries will be like a part of that msi databse, so even at the time of failures, rollback, uninstallation, things will work fine"
Posted by:
cygan
15 years ago
Posted by:
anonymous_9363
15 years ago
Self registration means, at the time of installation, it will use regsvr32.exe to register filesNot quite. In fact, for entries in the SelfReg table, the WI engine uses the Windows API DLLRegisterServer to register DLLs/OCXs since it itself couldn't guarantee the presence of RegSvr32.EXE.
If you import advertising registries then you will get a prompt to import them through proper advertising tables. You need to select 'yes'That, of course, only applies to Wise Package Studio users.
Posted by:
anonymous_9363
15 years ago
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.