Jump to content

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.

SelfRegModules fails or hangs

3 replies to this topic


  • Full Members
  • 2 posts

Posted 19 April 2010 - 12:56

OK, I'm in total panic. Ready to release and just find out that my MSI DLL registrations does not work ohmy.gif

The problem originally started with my InstallShield Express project. Suddenly the installation crashed in msiexec, or sometimes continued but without registering most of my dlls.

Normally I would get an error when a dependency was missing or I made a bug in my DLLRegisterServer. But this is different.

I reduced my setup to a few files and the problem is reproducible. I contacted InstallShield but they kept directing my in the Extract COM information direction, instead of self registration of my dlls. However I do other stuff in my self registration and this has worked for many many years without any problem.
I ensured that there is no dependency problems etc. When the problem occurs I can do Dependency Walter and a manual registration using regsvr32 on the dll without any problems.

I then downloaded Advanced Installer to give that I try on my files. It also fails, but in this case I can get a log, that points me in the direction of the problem. And sure enough the problem lies in the self registration of my dlls.

MSI (s) (B0:0C) [12:20:00:272]: Executing op: RegSelfReg(File=Common.Storage.dll,FileID=My.dll)
SelfRegModules: File: My.dll, Folder: C:\Program Files\My Company\MyTest\
Error 1904. Module C:\Program Files\My Company\MyTest\My.dll failed to register.  HRESULT -1073741819.  Contact your support personnel.
MSI (s) (B0:0C) [12:21:12:602]: Product: MyTest -- Error 1904. Module C:\Program Files\My Company\MyTest\My.dll failed to register.  HRESULT -1073741819.  Contact your support personnel.

And again when doing it manually it works.

I suspect some kind of service pack, policy, virus scanner, firewall to be the cause of this. Some must have experienced this also.

A colleague of mine is also struggling with a similar access problem, please see: http://forum.install...t=0


Stefan Krueger

Stefan Krueger


  • Administrators
  • 13,269 posts

Posted 19 April 2010 - 13:29

I can only guess, but as far as I know self registration is performed in the LOCALSYSTEM account, not in the current user account.

Johannes John

Johannes John
  • Full Members
  • 223 posts

Posted 23 April 2010 - 14:05

I hate COM registration, but I only create the setups.

Therefor I use the RegSpyUI.exe.
Extract the REG values.
I replace the current directory values by the property values []
and set the REG file in the component at "REG file to Merge at Build".

And the advantage during upgrade, the uninstallation don't neads the old file.



  • Full Members
  • 436 posts

Posted 24 April 2010 - 09:08

I know this is a contentious issue but I would strongly recommend against using self-registration (via the SelfReg or ISSelfReg tables, or using RegSvr32/MSIExec /y) and instead use the advertising tables. The principal reason is that self-registration requires any dependencies to be present. If they're not, registration fails.

IIRC, you can set up IS to use the advertising tables when you import a .REG.
- Don't know why 'x' happened? Want to know why 'y' happened? ProcMon will tell you.
- Try using http://www.google.com before posting.
- I answer questions only via forums. Please appreciate the time I give here and don't send me personal emails.