C++ dll not found while C# dlls are all found(and works on my computer)

0

on a clean computer(no visual studio), I zipped up the Debug folder for someone else (which worked on my computer) and someone else tried to start the program and I got the error

System.DllNotFoundException: Unable to load DLL 'HookHandler.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

I then had him install http://www.microsoft.com/en-us/download/details.aspx?id=8328

thinking that would help. Any ideas why it is not finding the dll on his computer but finds it fine on my computer?

EDIT: I should have noted HookHandler.dll sits in the same folder as the exe. Again, it works on my computer when I run the exe and HookHandler is there in my folder. I zip it up with HookHandler and gave it to someone else and it doesn't work and I verified HookHandler was there in his folder.

For somereason, installing visual studio fixed the issue. so it must be something HookHandler depends on so I need to try the ProcMon tool or depends.exe to see what HookHandler is depending on I guess.

thanks, Dean

c#
c++
windows
visual-studio-2010
asked on Stack Overflow Nov 2, 2012 by Dean Hiller • edited Nov 2, 2012 by Dean Hiller

4 Answers

1

Not sure what the issue is but I would recommend installing the .Net Framework 4 and giving it a shot.

Here is the download link: http://www.microsoft.com/en-us/download/details.aspx?id=17851

answered on Stack Overflow Nov 2, 2012 by Vaibhav Desai
1

My guess is that HookHandler.dll is not in your local project and that VS is grabbing it from somewhere else on your computer. If that's true, all you should have to do is:

in your project (with VS), look at the properties for HookHandler.dll, set 'Copy Local' to True, rebuild, rezip, and resend.

I've had this issue in the past (but with a different DLL) and this fixed it, hope it works for you.

answered on Stack Overflow Nov 2, 2012 by Sabe
0

Make sure the DLL is in the bin. Properties -> Copy Local -> Always

You can't expect people to have obscure crap like HookHandler.dll on their computers :p

answered on Stack Overflow Nov 2, 2012 by evanmcdonnal
0

Ok, this was very very odd. We build our stuff with Debug configuration and deliver with that as we want all the line numbers and all the goodies in production. The info has been worth the benefit of any minor performance improvement of using Release version(plus our performance is way more than we need right now anyways).

That said, swapping out the Release version of the C++ dlls, pdf, ilk, etc. fixed the issue!!!!! so it had nothing to do with not finding them but had to do with it using some visual studio dlls since it was compiled in Debug configuration.

so basically any C++ dlls MUST be compiled in Release mode while our other projects are compiled with Debug mode now and that fixes the issue.

answered on Stack Overflow Nov 8, 2012 by Dean Hiller

User contributions licensed under CC BY-SA 3.0