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.
Photo

MFCDLL Shared Library


2 replies to this topic

eheimfeld

eheimfeld
  • Members
  • 10 posts

Posted 20 December 2001 - 16:32

I am using ISWI 2.03. In "C:\Program Files\InstallShield\Professional - Windows Installer Edition\Modules\i386" there are 2 "MFCDLL Shared Library - Retail version" merge modules. One supplies mfc42.dll and the other mfc42u.dll.

Does anybody know what the difference between these 2 merge modules are?

What would happen if I included BOTH of these merge modules in my setup? I am including both of them, I don't know why. So I need to know which I can eliminate and what happens if I don't eliminate one of them.

I am concerned about this, because on some customer machines the mfc42.dll file doesn't get updated with the version I am supplying. I am supplying version 6.0.8665.0 but on the customer's machine has version 4.21.xxxx.x. This is creating problems with the OCX's I am supplying and I can't even register them using regsvr32, let alone have register itself during installation.

Any help or comments would be greatly appreciated.


Ian Blake

Ian Blake
  • Members
  • 483 posts

Posted 20 December 2001 - 17:14

mfc42u.dll is the unicode string version of mfc42.dll.   If your applications are not unicode builds the mfc42u.dll will not be needed.   The two merge modules should be completely independent.

I suspect your non update may work like this.  On some machines some process is running, a little systray applet perhaps, that is using MFC42.  MFC42 is locked so msiexec service can not overwrite the old version and has to schedule the update for the next restart..  Later in your install your Regsvr32 or self registration fails because of the wrong MFC42.  This triggers a rollback so the scheduled update of MFC42 never occurs.  
If this is your problem might I suggest you do not self register or use regsvr, this is not the msi way.  This is one of the reasons Msi guidelines advise you not to self register.  Use ISWI to extract the registaion informaion for you.  If any registry keys are missing author them into the corresponding component yourself.


eheimfeld

eheimfeld
  • Members
  • 10 posts

Posted 20 December 2001 - 17:44

Thanks for your reply.

I reviewed all of the components and all use either "Advanced Setting" or "Extract at Build". Do you, or anybody else, have any other clues.