KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I built a C# application with WPF on Visual Studio 2012 that uses C++ DLL and targets .NET4.5. I have two projects running, one for the C# project and the other for C++ DLL project. I released both projects into a folder that has a .exe for C# and a .dll for C++ in the same folder. I run them on my machine where they were developed and everything works fine. I run the .exe in other machines and it throws this exception: System.DllNotFoundException: Unable to load DLL It's not recognizing the DLL that is in the same folder. I tried many things and nothing seems to work. I followed the solution in this post but nothing worked. The Dev and Target machine are identical. In Dev, Visual Studio 2012 is installed, but that's the only difference. Code: C#: [DllImport(@"Wireless.dll", EntryPoint = "?cert_exists@certificate@CertFuncs@@SAHHPBD@Z", CallingConvention = CallingConvention.Cdecl)] static extern int cert_exists(int store, [MarshalAs(UnmanagedType.LPTStr)]string cert_str); C++: static int __declspec(dllexport) cert_exists(int type, LPCSTR cert_str); Update: If I install Visual Studio 2012 on the target machine, everything works fine. If I remove it, the application crashes again. Any ideas on what VS is adding that can make the application work?
Tags (comma-separated)
Save Edits
Cancel