"Couln't find library MSVCR80.dll" with ASP.Net 2.0

  • Thread starter Christoph Wienands
  • Start date
C

Christoph Wienands

Hey guys,

I just installed .Net Framework 2.0 and it broke one of the applications
that I develop. Here is the error message:

Executable C':\Program Files\Ticketwizard\MyApp.exe\ had the following
unrevoerable error:
Couln't find library MSVCR80.dll (required by
'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_perf.dll)

Now, the funny thing is my app doesn't use this library at all.

Does anybody have an idea?

Thanks, Christoph
 
G

Guest

The library in question is the C Runtime (used by C++). The version of the
DLL you use depends on the platform you are running on. The tool in question
could use the MSVCR80.dll underneath the hood or it could be due to
programming in C++.

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

***************************
Think Outside the Box!
***************************
 
W

Willy Denoyette [MVP]

| Hey guys,
|
| I just installed .Net Framework 2.0 and it broke one of the applications
| that I develop. Here is the error message:
|
| Executable C':\Program Files\Ticketwizard\MyApp.exe\ had the following
| unrevoerable error:
| Couln't find library MSVCR80.dll (required by
| 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_perf.dll)
|
| Now, the funny thing is my app doesn't use this library at all.
|
| Does anybody have an idea?
|
| Thanks, Christoph
|
|

Weird, the C runtime (MSVCR80.dll ) is used by the run-time (CLR) and should
be installed with this version of the Framework.
What kind of application is this, what language is there used? Is it build
against v2? What happens if you build and run a simple "hello world" kind of
app.?

Willy.
 
R

Richard Grimes [MVP]

Christoph said:
Executable C':\Program Files\Ticketwizard\MyApp.exe\ had the following
unrevoerable error:
Couln't find library MSVCR80.dll (required by
'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_perf.dll)

Now, the funny thing is my app doesn't use this library at all.

Nasty bug, by design, in C++ in VS2005.

More details here:

http://www.grimes.demon.co.uk/workshops/fusWSThirteen.htm

The short description is this. C++ (managed and native) now use shared
microsoft libraries through the side-by-side assembly cache. This is
like the GAC but for unmanaged code. Managed C++ uses the CRT in mixed
and pure code to support global objects and other C++ features. The
problem is that your code has to have a manifest indicating the version
of the assembly you want to use and for a DLL this has to be bound to
the DLL as an unmanaged resource. If you don't do this then Windows
refuses to load the library. Even copying the library to the same folder
as your DLL does not work.

If your ASP.NET app uses a C++ DLL (managed or unmanaged) then you'll
get this error if that DLL was built with the C++ import libraries
provided with VS2005. Note that if the C++ DLL was built as part of a
VS2005 project _made with the VS2005 project wizard_ then you'll not get
this problem because the project wizard sneakily adds a build step to
bind the manifest to the DLL.

Richard
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top