Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

How does IE register ActiveX controls for use in the browser?

Does it just run regsvr32 for the DLL?

share|improve this question
1  
Would this be better suited for StackOverflow? –  David Pearce Aug 24 '09 at 1:18
    
I put it here because I'm not programming anything - I'm trying to learn about how Windows handles other peoples' websites. –  ChristianLinnell Aug 24 '09 at 1:29
    
I think this is a great question, and is not a pure programming question. –  Brian Lyttle Aug 24 '09 at 2:05
add comment

3 Answers 3

up vote 1 down vote accepted

ActiveX components register themselves, triggered by a well known DLL entry point (DllRegisterServer).

regsvr32 is just a wrapper around loading the DLL and calling that entry point. Other tools can do this directly. Installers sometimes just directly update the registry (having recorded the changes to make when building the installer).

share|improve this answer
add comment

My understanding is that it uses some of the underlying APIs that regsvr32 uses, but it doesn't call the regsvr.exe. ActiveX controls are composed of a file on disk, typically a .DLL file, and some registry entries. The registry entries are used to lookup the the location of the actual executable code since the browser would not want to specify a particular files. It is possible for the registry entries to be created in a number of ways including the mechanism that regsvr32 uses.

Creation of registry entries under Vista requires higher level privileges and must pass UAC. Therefore standard users cannot install ActiveX controls. There is a helper service that can do the registration of controls on behalf of the user.

share|improve this answer
add comment

It actually doesn't have to do any of these things; the CAB file specifies what it will actually do. It may use DllRegisterServer, and indeed this is the most common thing, but it could also launch an MSI or EXE installer that may register the ActiveX control in another way.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.