none
DLL is working on one of my computer, and on the other not working

    Question

  • Hello.
    I wanted to use RakNet (made with C++) with VB.NET, so I downloaded a wrapper (made with SWIG). The wrapper come with an example in C#, and 2 DLLs (DotNET.dll and DotNETWrapper.dll).
    On one of my computers its working perfectly, but on the other, its says:

    {"Unable to load DLL 'DotNETWrapper': This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem. (Exception from HRESULT: 0x800736B1)"}

    (you need to reference only DotNET.dll - that calling DotNETWrapper.dll)

    I tried to run exactly the same project (extracted the example from the same RAR file) on two computers - on one of the computers its working and on the other not working.

    Does anyone have any idea?

    Thursday, March 22, 2007 9:30 PM

Answers

  •  Ori Lahav wrote:
    I ran it through C# on the two computers... The problem must not be the run-time files...
    Try uninstalling and reinstalling the .NET framework.  99% of problems like this are fixed by doing that.
    Monday, March 26, 2007 3:22 PM
    Moderator

All replies

  • This isn't a language issue, moved to the General forum.
    Friday, March 23, 2007 2:25 AM
    Moderator
  • From where it somehow got lost in the CLR forum.  Sounds to me like the other PC doesn't have the required C++ runtime DLLs installed.
    Friday, March 23, 2007 7:28 AM
    Moderator
  • Not working...
    The same as before.
    Friday, March 23, 2007 10:38 AM
  • Make sure you use the Release build, not the Debug build.  Use DepencyWalker, when you run your program in it with the Profile command, it will tell you what DLLs it loads.
    Friday, March 23, 2007 11:29 AM
    Moderator
  • These are the files DepencyWalker says its can't find:
    MSCORPE.DLL
    MSCORSEC.DLL
    MSDIS150.DLL
    MSPDB80.DLL
    MSVCM80D.DLL
    MSVCR80D.DLL

    What are they? Where can I get them?
    Friday, March 23, 2007 3:03 PM
  • You'll need to install the .NET framework to get mscor*.dll.  You'll need to build and copy the Release version of your program to avoid using mspdb80.dll and the debug versions of the CRT libraries (msvcm80d.dll and msvcr80d.dll).  A Setup and Deployment project usually takes care of such details...
    Friday, March 23, 2007 3:31 PM
    Moderator
  • I already have .NET Framework... VS.NET can't work without it.
    Maybe I didn't understand you, can you give me a specific link or information?
    Friday, March 23, 2007 3:42 PM
  • I tried it myself on a debug version of a C++ program that worked properly.  The mscor*.dll, msdis150.dll and mspdb80.dll are indeed reported missing so ignore those.  msvcm80d.dll and msvcr80d.dll are reported *twice* in the Module window.  Once reported missing in the .exe's startup folder, but reported found in the c:\windows\winsxs subfolder where the VS2005 installation program puts them.  If you didn't install VS2005 on the target computer, you *really* have to use the Release version.
    Friday, March 23, 2007 3:56 PM
    Moderator
  • I ran it through C# on the two computers... The problem must not be the run-time files...
    Saturday, March 24, 2007 6:25 PM
  •  Ori Lahav wrote:
    I ran it through C# on the two computers... The problem must not be the run-time files...
    Try uninstalling and reinstalling the .NET framework.  99% of problems like this are fixed by doing that.
    Monday, March 26, 2007 3:22 PM
    Moderator
  • I have both VB.NET and C# on this computer. Reinstall both of them?
    Thursday, March 29, 2007 7:59 AM