views:

133

answers:

1

Why would you use DLLSelfRegister in a VB deployment package?

I am trying to sort out possible conflict problems with a calendar control: msacal70.ocx. Apparently there is a conflict with newer Office calendar controls. This might be the cause of Automation Error showing after the package is deployed to some machines.

I noticed the setup.lst for the VB deployment package uses DLLSelfRegister for this control. What are the effects of allowing a DLL to self-register and would removing DLLSelfRegister cause the ocx to register during installation of the package?

A: 

DLLSelfRegister simply tells the installer that the DLL is in fact a COM component that can be registered. Without this the DLL would not get registered and thus would not be properly usable. Registering writes information about the component to the register that clients use to create instances of the component. Here is more information about the Package and Deployment Wizard.

Stefan Egli
If you don't use DllSelfRegister, would it be necessary to register the DLL manually using regsvr32?
Craig Johnston
Short answer: yes. You could write the necessary registry entries yourself, but I would not really do this in this situation...
Stefan Egli