Sql 无法安装程序集“amqmdnet”,因为现有策略将阻止它被使用

Sql 无法安装程序集“amqmdnet”,因为现有策略将阻止它被使用,sql,sql-server,ibm-mq,sqlclr,Sql,Sql Server,Ibm Mq,Sqlclr,嗨, 我尝试在SQL server中注册amqmdnet.dll作为IBM WebSphere MQ for Windows的一部分,以便部署SQL CLR存储过程将其用于MQ mesaging create assembly amqmdnet from 'c:\mssql\assembly\amqmdnet.dll' with p

嗨, 我尝试在SQL server中注册amqmdnet.dll作为IBM WebSphere MQ for Windows的一部分,以便部署SQL CLR存储过程将其用于MQ mesaging

create assembly amqmdnet                                                
from 'c:\mssql\assembly\amqmdnet.dll'                                   
with permission_set = unsafe   
Msg 6586, Level 16, State 1, Line 1                                     
Assembly 'amqmdnet' could not be installed because existing policy      
would keep it from being used.  
代码是:

create assembly amqmdnet                                                
from 'c:\mssql\assembly\amqmdnet.dll'                                   
with permission_set = unsafe   
Msg 6586, Level 16, State 1, Line 1                                     
Assembly 'amqmdnet' could not be installed because existing policy      
would keep it from being used.  
服务器的响应是:

create assembly amqmdnet                                                
from 'c:\mssql\assembly\amqmdnet.dll'                                   
with permission_set = unsafe   
Msg 6586, Level 16, State 1, Line 1                                     
Assembly 'amqmdnet' could not be installed because existing policy      
would keep it from being used.  
-版本:

create assembly amqmdnet                                                
from 'c:\mssql\assembly\amqmdnet.dll'                                   
with permission_set = unsafe   
Msg 6586, Level 16, State 1, Line 1                                     
Assembly 'amqmdnet' could not be installed because existing policy      
would keep it from being used.  
Microsoft SQL Server 2008 (SP3) - 10.0.5835.0 (Intel X86)               
    Mar  1 2013 18:44:43                                                   
    Copyright (c) 1988-2008 Microsoft Corporation                          
    Enterprise Edition on Windows NT 5.2 <X86> (Build 3790: Service Pack 2)
CLR已启用,Trustly已启用,其他CLR过程工作正常

create assembly amqmdnet                                                
from 'c:\mssql\assembly\amqmdnet.dll'                                   
with permission_set = unsafe   
Msg 6586, Level 16, State 1, Line 1                                     
Assembly 'amqmdnet' could not be installed because existing policy      
would keep it from being used.  

如何解决这个问题

您使用的是什么版本的MQ?我能够在SQL Server 2008 R2上成功注册WMQ 7.5.0.0版本amqmdnet.dll。MQ和SQL Server均未应用任何service Pack。@Shashi amqmdnet.dll版本为7.5.0.2您是否取得了任何进展?MQ程序集是否在GAC中?如果是这样,您是否可以从GAC取消注册MQ程序集,然后在SQL Server中运行创建程序集?要取消注册MQ程序集,可以从/bin目录运行amqiregisterdotnet.cmd/u bat文件。@Shashi谢谢!从GAC注销ASM后,dll已在SQL中成功注册。不幸的是,这部电影的作者盖伊现在正在度假。几周后他将继续工作:太好了!如果策略文件位于GAC中,SQL Server似乎存在一些问题。
create assembly amqmdnet                                                
from 'c:\mssql\assembly\amqmdnet.dll'                                   
with permission_set = unsafe   
Msg 6586, Level 16, State 1, Line 1                                     
Assembly 'amqmdnet' could not be installed because existing policy      
would keep it from being used.