IIS cannot load global type despite of existing dll

0

I'm trying to get an application to run on an IIS 6.0 that I was assigned to support.

I copied all the source and binaries to the Inetput folder. The WebApp is running, but I get the error that tells me that the global type of the application could not be loaded.

How can I debug this? The namespace is correct, the DLL is present in the /bin/ folder of the application, and still the app cannot load it.

After turning on Fusion logging, I found this error file that concerns my global class;

*** Assembly Binder Log Entry  (05.11.2012 @ 08:45:30) ***

The operation failed.
Bind result: hr = 0x80131107. No description available.

Assembly manager loaded from:  C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\fusion.dll
Running under executable  c:\windows\system32\inetsrv\w3wp.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: DisplayName = MyApplication
 (Partial)
LOG: Appbase = file:///c:/inetpub/wwwroot/MyApplication
LOG: Initial PrivatePath = bin
LOG: Dynamic Base = C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\MyApplication\a1144233
LOG: Cache Base = C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\MyApplication\a1144233
LOG: AppName = 1ec25e47
Calling assembly : (Unknown).
===

LOG: Processing DEVPATH.
LOG: DEVPATH is not set. Falling through to regular bind.
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: Post-policy reference: MyApplication
LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/MyApplication/a1144233/1ec25e47/MyApplication.DLL.
LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/MyApplication/a1144233/1ec25e47/MyApplication/MyApplication.DLL.
LOG: Attempting download of new URL file:///c:/inetpub/wwwroot/MyApplication/bin/MyApplication.DLL.
LOG: Assembly download was successful. Attempting setup of file: c:\inetpub\wwwroot\MyApplication\bin\MyApplication.DLL
LOG: Entering download cache setup phase.
ERR: Error extracting manifest import from file (hr = 0x80131107).
ERR: Setup failed with hr = 0x80131107.
ERR: Failed to complete setup of assembly (hr = 0x80131107). Probing terminated.

What's going wrong there? The bin\MyApplication.DLL exists and is compiled correctly, so I don't see the problem...

asp.net
.net
iis-6
asked on Stack Overflow Oct 31, 2012 by F.P • edited Nov 5, 2012 by F.P

1 Answer

1

Reproducing the solution from the comments...

Step 1 is to enable Fusion Logging to get a log of what was failing

This produced the log file that indicates that IIS was trying to launch the DLL under version 1.1 of the .Net Framework. The error then occurred when it tried to read the manifest of the dll.

This indicates that the dll was from a later version of the framework and so couldn't be loaded.

answered on Stack Overflow Nov 5, 2012 by Bob Vale

User contributions licensed under CC BY-SA 3.0