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\microsoft.net\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.

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

[Cause]
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.

[Resolution]
Either sign the satellite assembly with the private key or do "sn -Vr
MyLibrary.dll".

Original post:
http://groups.google.com/group/microsoft.public.dotnet.internationalization/browse_thread/thread/a272cc3c771ff444/47c3720fa591d650?lnk=st&q=hayato+iriumi+internationalization&rnum=1&auth=DQAAAGwAAADEFjY8zkBD4Tef_30Gma1jqtR4NHiZaz-iGCvdyUqS3DO_EO2WOQ7rM7Bo4R9tGJaWUhSgSLM8l0PWvJiL5lqUmQS2jsfUA70Gd_UxmLnBUqsPzmJZjDY8nrkzajjdXDeg50DADNDMkaz3yid19e60
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.