I am creating a Browser Helper Object in C++, and previous tests were successful on multiple machines. However, the final product only works on the computer that it was developed on. The .dll file was tested on computers with similar settings, such as the same Operating System, and the only thing that had changed to make the completed BHO erroneous was the addition of some libraries. I have included a dump of the dependencies below of the previousd successful BHO build and the new erroneous one in case it may help, anything would greatly appreciated. Thanks!
bho.dll (Previous Successful Build)
File Type: DLL
Image has the following dependencies:
SHLWAPI.dll
KERNERL32.dll
OLEAUT32.dll
Summary
4000 .data
1000 .idata
12000 .rdata
4000 .reloc
1000 .rsrc
53000 .text
27000 .textbss
BHOinCPP.dll (Completed Erroneous Build)
File Type: DLL
Image has the following dependencies:
KERNEL32.dll
USER32.dll
ADVAPI32.dll
OLEAUT32.dll
MSVCR100D.dll
Summary
1000 .data
1000 .idata
4000 .rdata
1000 .reloc
1000 .rsrc
9000 .text
10000 .textbss
I bet this one is causing the problem: MSVCR100D.dll. That is a debug version of the C runtime. What you want to do is statically link CRT by using the /MT option. More details here: http://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx