tags:

views:

64

answers:

3

I have an application that apparently needs some obscure DLLs. I reference a 3rd party COM object within it, which is what I believe is causing the issue. I downloaded a program called Depends.exe, and when I point it at my application, it says I need things like IESHIMS.DLL, IEFRAME.DLL, and SHLWAPI.DLL.

I'm told these are things that are typically taken care of by side-by-side assembly, something that an installer provides. I'm using WiX for my installation. Does WiX not provide this? Do I need to tell it to provide it explicitly?

+1  A: 

Pretty much every assembly I've ever looked at using Depends.exe seems to need at least 2 of those 3 assemblies, and they all run fine.

I'm not sure as to the exact reason why Depends.exe marks those 3 as unresolved references, however I'm fairly certain that those 3 assemblies can be ignored in Depends.exe.

Kragen
http://stackoverflow.com/questions/2465111/dependency-walker-reports-ieshims-dll-and-wer-dll-missing contains a good answer for ieshims.dll. All of them are delay loaded so if the functionality isn't used then their absence doesn't matter.
BruceCran
A: 

Those aren't obscure dlls. I don't know why the references wouldn't be there. This is the release build, not the debug build of the program, right?

A: 

LIke Kragen said, Depends.exe often complains about those files. When using Depends.exe I look at only the DLLs that are not provided by the system (i.e. mine and their dependencies).

Also note that the Windows Installer cannot intsall system files. Those files are all system files so they definitely should not be in your MSI.

Rob Mensching