Hi everybody, Here is the situation: I have a C++ library that I wrapped using Swig for C#. The result is a low-level .so file that contains a C wrapper for the C++ library and a bunch of C# files that talk to .so file via P/Invoke calls.
So far, so good. I created a test program that included all the generated C# files and I was able to call the C++ code successfully through all the layers. BTW, I'm using MonoDevelop as my IDE. I had some problems finding the .so file and eventually after reading http://www.mono-project.com/Interop_with_Native_Libraries I settled on the following solution: - Put the .so file in the same directory as the .exe file and create .config file for the .so file that looks like that: <configuration> <dllmap dll="net" target="net.so" /> </configuration> Now, I want to wrap the whole mess in a non-executable assembly that will add a nicer interface and hide all the low-level stuff generated by Swig. So, I created a library project, added all the Swig generated C# files, added my nice interface class that uses the low-level stuff. The new library project builds just fine and created a net.dll file. I created a new test program that references the net.dll and calling the nice interface. This program builds fine too. When I try to run this program I get again a System.DllNotFoundException I added a config file called net.dll.config, but this time it didn't help. I even tried to map to the absolute path of the .so file to no avail. I know that the config file is used because the DllNotFoundException in the output says it can't find the target DLL with the full absolute path. Any ideas what I should try next? Thanks, Gigi
_______________________________________________ Mono-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-list
