我已经为exchange 2010构建了一个简单的传输代理(使用.NET 4.0),我正试图使用exchange管理shell安装它,但我遇到了这个错误:
Could not load file or assembly 'file:///C:Program FilesMicrosoftExchange ServerV14PublicMySimpleAgent.
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
我真的只找到了一个关于这个问题的好的公开讨论,但一些人提出的解决方案对我的处境没有帮助。
我有:
- 确保我的项目同时引用
Microsoft.Exchange.Data.Transport
和Microsoft.Exchange.Data.Common
- 已将程序集部署到
Program FilesMicrosoftExchange ServerV14Public
还有其他建议吗?
为了弄清楚这一点,我追了两天的尾巴。问题最终是微软的版本。交换数据Common和Microsoft。交换数据我的项目中引用的传输dll与集线器传输服务器上"public"文件夹中的dll版本不匹配。将我引用的dll更新到正确的版本后,问题就消失了。
我几天也遇到了同样的问题。我的同事安装了。NEt Framework 4.0(没有重新启动服务器),问题仍然存在。在我阅读了许多论坛条目、提示和技巧后,我在ExchangeServer2010上发现了这个问题。我只需要重新启动IIS。重新启动后,我可以毫无问题地安装我的传输代理。
尝试用64位编译,它为我完成了任务!
我不得不编译为x64和。NET 3.5的安装工作(使用VS2013)
做iisreset也有帮助,因为我最初确实得到了错误。NET 3.5。因为w3wp在我尝试重复安装它时保留了该文件。
NET 3.5是两个参考所要求的
微软。交换数据普通
微软。交换数据运输
NET 4.0对我不起作用,我最初尝试使用。NET 2.0遵循上的MS文档