Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / database / SQL-Server

SQL Server failed to load assembly with PERMISSION_SET = EXTERNAL_ACCESS or UNSAFE

5.00/5 (5 votes)
17 Jan 2011CPOL 66.3K  
32 bit or 64 bit SQL Server
I got the following error message from one of my client's sites. They run SQL Server 2008 64 bit version.

"An error occurred in the Microsoft .NET Framework while trying to load assembly id 65540. The server may be running out of resources, or the assembly may not be trusted with PERMISSION_SET = EXTERNAL_ACCESS or UNSAFE."

I Googled a lot on the Internet. I tried all the tricks, such as:

Alter Database ... Set Trustworthy On
sp_configure 'ole automation procedures' 1
sp_changedbowner 'sa'
...

All failed.

At last, I saw one article that talked about 32 bit assembly cannot be loaded on 64 bit SQL Server. I recompiled my source code with "Any CPU" option, and it worked!

Again, Microsoft displays a misleading and confusing message here, it allows you to create the assembly without any error, it doesn't say it cannot load 32 bit assembly, but it told you it doesn't trust EXTERNAL_ACESSS or UNSAFE assembly.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)