Scott Hanselman

ASP.NET - The check of the signature failed for 'MyAssembly'

October 4, '05 Comments [2] Posted in ASP.NET | XML
Sponsored By

When you're using a delay-signed strongly-named assembly in ASP.NET you might get this error:

Configuration Error  

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: The check of the signature failed for assembly 'MyAssembly'.
Source Error:

Line 229:        <add assembly="System.EnterpriseServices, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
Line 230:        <add assembly="System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
Line 231:        <add assembly="*" />
Line 232:      </assemblies>
Line 233:    </compilation>

Source File: c:\windows\\framework\v1.1.4322\Config\machine.config    Line: 231

Even if you've set up verification skipping with sn.exe -Vr, you'll need to restart the ASP.NET worker process before it takes effect as the information is only read when the process is first started.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by ORCS Web
Wednesday, October 05, 2005 4:35:02 AM UTC
I had an issue that I struggled with in relation to delay signing. I shared this problem in newsgroup. I thought it would be beneficial to share this with the readers here as well.

Although I tried to get a string from a resource file for a different
culture, it always returned a string for English (default).

Satellite assembly was partially signed along with the main one. Main
assembly was registered on the machine to be ignored (sn -Vr
MyLibrary.dll), but satellite assembly wasn't. ResourceManager did not
throw any exception, and it silently defaulted to the resource for
English which is embedded in the main assembly.

Either sign the satellite assembly with the private key or do "sn -Vr

Original post:
Wednesday, October 05, 2005 7:42:13 AM UTC
thats because SNed assemblies are loaded domain neutral IIRC
Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.