Reputation: 168
I have created a C# winforms application with VS2013, which includes C++ DLLs for which I also have the code. This app runs fine on my win7 64bit machine. When I run it on my colleague's machine for a deployment test (same hardware, same OS, no VS2013), the app crashes and says that one of the C++ DLL or its dependencies cannot be found.
When I run dependency walker on my machine, it lists the same missing DLLs than in this thread: Win 7, 64 bit, dll problems
So I followed the solutions mentioned there and installed the C++ Redistable Packages 2005, 2008, 2010, 2012 and 2013, but to no success.
All projects target .NET 4.0 (x86). The C++ project hold a lot of external references, but only to .NET DLLs and C++ header files, most of the latter are from c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include I do not need to deploy header files, do I?
Does anybody have a clue how to proceed?
Upvotes: 1
Views: 127
Reputation: 5128
This could be because your C++ DLLs are a debug build and are dynamically linked against the debug versions of the VC++ runtime libraries used by the version of VS where they were built. You can either build release versions of your C++ DLLs and use those instead, in which case the installed VC++ redistributable packages should provide the correct runtime libraries, or you could get the debug versions of the required VC++ runtime libraries and ensure those are present on the target machine.
If you must use the debug version of your C++ DLLs then Microsoft provides some instructions on how setup your test machine here.
Upvotes: 1