Dll hell?

  • Thread starter Thread starter Per Rasmussen
  • Start date Start date
P

Per Rasmussen

I have started to use vs2005 to build my CF application recently, but I have
experienced some problems. My application accesses several native dlls
through some wrapper dlls (which is .NET assemblies), and I have several
times experienced that when I execute the application, the first line that
calls the wrapper assembly throws a missingmethod exception. To my
knowledge, this usually means that the dll either present or has been
changed. The strange thing is that the dll IS present and definitely has not
been changed.

Has anyone experienced something similar? Any good ideas to what I might do
wrong?

Thanks in advance,
Per Rasmussen.
 
Tell us the locations of all your dlls (native and managed). Also show us
the dllimport declaration and the corresponding c function it is supposed to
map to..

Cheers
Daniel
 
The dlls are located in same directory as the executable. I have also tried
placing them in the windows directory just to see if that helped.

Since I am calling a .NET assembly which acts as a wrapper for the native
dll (in the cases were I have the problem) I don't have a dllimport
declaration. I don't have the source code for the dlls so I do not know
their dllimports. But the strange thing is that it works sometimes.

Example: I had a small test application which used one of these dlls I
described earlier (in this case a small speech synthesis engine) which had
worked fine earlier. I then opened the project and deployed it, but now I
got a missing method exception. The dlls were placed in the applications
directory. I also tried placing them in the windows directory. Then I
created a new project, copied over the code and added references to the
project as in the old project. This new project worked fine. It makes no
sense!

I have experienced something similar with a bluetooth library called franson
bluetools (www.franson.com).
 
Back
Top