我目前正在尝试在TeamCity上构建,它使用Microsoft.Office.Interop dll。这将在我安装Office时在本地构建和工作正常,但是当尝试在TeamCity上构建它时它会失败,因为它没有引用。
我无法安装PIA distributable,因为我收到一条错误消息,说明需要安装Office 2003。我不想在服务器上安装Office。
有没有办法解决这个问题?
答案 0 :(得分:3)
如果所有teamcity服务器正在进行构建,则将Microsoft.Office.Interop DLL添加到项目的References文件夹中,然后将项目配置为查看该引用文件夹。
但是,如果TeamCity服务器也运行使用Office Interop的测试,那么除非在运行测试的计算机上安装了Office,否则会遇到问题。
答案 1 :(得分:0)
不是 - Interop dll只是.NET代码和实际(COM)Office代码之间的一个thunk层。如果你有没有底层Office dll的Interop dll,那么对Interop的任何调用都将失败,因为Interop将要调用它可以互操作的COM对象。
这些COM对象是Office对象,因此您需要安装Office的某些部分。