Exchange Server传输代理将无法加载,“由较新的运行时构建”

时间:2011-06-03 16:06:13

标签: .net exchange-server exchange-server-2010 exchange-transport-agents

我为Exchange 2010构建了一个简单的传输代理(使用.NET 4.0),我正在尝试使用Exchange管理shell安装它,但我遇到了这个错误:

Could not load file or assembly 'file:///C:\Program Files\Microsoft\Exchange Server\V14\Public\MySimpleAgent.
dll' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot
 be loaded.
    + CategoryInfo          : InvalidArgument: (:) [Install-TransportAgent], BadImageFormatException
    + FullyQualifiedErrorId : 3A033BB9,Microsoft.Exchange.Management.AgentTasks.InstallTransportAgent

我真的只找到了这个问题的一个好public discussion,但有些人建议的解决方案对我的情况没有帮助。

我有:

  • 确保我的项目同时引用Microsoft.Exchange.Data.TransportMicrosoft.Exchange.Data.Common
  • 将我的程序集部署到\Program Files\Microsoft\Exchange Server\V14\Public

还有其他建议吗?

4 个答案:

答案 0 :(得分:3)

我把我的尾巴追了两天试图找出这个。问题最终是我的项目中引用的Microsoft.Exchange.Data.Common和Microsoft.Exchange.Data.Transport dll的版本与集线器传输服务器上“public”文件夹中的dll版本不匹配。将我引用的dll更新为正确版本后,问题就消失了。

答案 1 :(得分:2)

几天我遇到了同样的问题。我的同事安装了.NEt Framework 4.0(没有重启服务器),问题仍然存在。在我阅读了很多论坛条目和技巧和窍门之后,我在Exchange Server 2010上发现了问题。我只需要重新启动IIS。重新启动后,我可以毫无问题地安装我的传输代理。

答案 2 :(得分:1)

尝试以64位编译,它为我完成了工作!

答案 3 :(得分:0)

我必须编译为x64和.NET 3.5才能使安装正常工作(使用VS2013)

同样做iisreset有帮助,因为我最初使用.NET 3.5也得到了错误。因为w3wp试图重复安装它而保留了文件。

两个引用

需要.NET 3.5
  

Microsoft.Exchange.Data.Common

     

Microsoft.Exchange.Data.Transport

.NET 4.0对我不起作用,我最初尝试在MS documentaion之后使用.NET 2.0