我正在帮助一个承包商以前工作过的项目(所以我没有很多历史记录)。
项目构建正常,但是当我们尝试执行某些操作时,我们会收到一个运行时错误,指示无法找到System.Management.Automation.dll。
作为一种麻烦措施,我们手动将dll安装到安装目录中。然后,我们收到错误,指示无法加载Microsoft.Management.Infrastructure。
据我所知,这些dll存在于Microsoft Management Framework下载中,可能还存在于Powershell 3.0中。
我的问题:这些dll所属的最小软件包是什么,以及将它们部署到生产软件版本的最佳方式是什么?
修改
只是要明确 - 我不打算通过部署这些dll“裸”来破解/ frankenbuild,我正在尝试为这些dll识别正确的可再发行组件。我似乎无法弄清楚它是哪一个。
修改
如果有帮助,我们运行的代码的性质是以编程方式创建交换邮箱。
答案 0 :(得分:1)
我认为您无法合法地重新分发这两个DLL中的任何一个(例如 here 讨论自动化,您还可以检查“Redistributable” {{ 3}} 用于那些名称空间)。您必须确保目标计算机具有PowerShell和管理框架。
答案 1 :(得分:0)
以防其他人遇到此问题:我们最终通过部署包含必要程序集的Windows Management Framework 3.0来解决此问题。 http://www.microsoft.com/en-us/download/details.aspx?id=34595