PDA

View Full Version : File installation order not based on dependency order



Mark Stegall
02-17-2010, 08:40 PM
I am trying to install a number of DirectX filters, .ocx files. They are also depedent on .dll files in the same installation. The ocx files failed to register because the dll file it is dependent on hasn't been copied yet (these files are in the same directory as the ocx files being installed.) After installation is done and completed I can reregister the files by hand without error. I would have thought that IS was smart enough to understand that files in the same installation may have dependencies on eath other and they would have been copied in the correct order so registration would not fail. Am I missing a settings somewhere or somehting that allows me to set the file installation order?

Alpesh
02-17-2010, 10:25 PM
Hi Mark,

Try marking the files as self-registering in the InstallShield project. This may work for you.

Thanks,
Alpesh

Mark Stegall
02-19-2010, 09:26 PM
The files are self registering. The problem I am seeing is that it is copying and registering before the file it is depedent on has been copied.

Christopher Painter
02-19-2010, 11:02 PM
The real solution here is to not use self registration as this is not a windows installer best practice. COM extraction will solve this problem as the file copy and registry application is not order sensitive.

Mark Stegall
02-24-2010, 06:05 PM
"Extract Com" does not actually register a DirectX filter executable. It needs to do the equivalent of "regsvr32 module" which calls the DllRegisterServer entry in the module. When you mark a file for self registration this happens. The problem is if this module is depedent on another module or another dll that hasn't been copied and/or registered, the module fails to register.