尝试在VS2013中编译C#项目时,我在标题中收到错误。
看来我需要查看我的编译器选项,并确保/ link和/ reference选项不会重复。
现在,如果我可以找到编译器选项。我转到项目属性,但是我没有在任何可以访问编译器选项的选项卡中看到任何内容。
如何访问VS2013中的编译器选项?
答案 0 :(得分:1)
/link
选项不受项目属性控制。它适用于程序集引用,您可以在项目的“引用”节点中找到它们。
当引用的Embed Interop Types
属性设置为True时,将使用它。适用于COM类型库的引用。如果为False,则使用/reference
。很难猜到你如何打开/ link和/ reference。然而程序员已经过时的PIA陷入困境,“嵌入互操作类型”的另一个名称是“没有PIA功能”。可能与它有关。
答案 1 :(得分:1)
我知道这是一个老问题,但我自己也遇到了这个问题。 我花了一些时间试图修复它,再加上Hans Passant所说的,在这种情况下它没有多大意义。
重新启动Visual Studio后,我的问题就消失了。
如果我尝试切换Embed Interop Types
- 将其从True
更改为False
,我可以重现此问题。这已将Copy Local
更改为True
。再次更改Embed Interop Types
似乎会导致问题,就好在幕后只有一个选项被正确更改。
确保这些设置是我想要的,然后重新启动Visual Studio似乎使它恢复正常。
答案 2 :(得分:0)
向我的项目添加引用(Microsoft.Office.Interop.Excel)时遇到了同样的问题,该引用可能会干扰其中一个或多个引用:COM Excel
,COM Microsoft.Office.Core
和{{1 }}。当我最终在代码中找到一个解决方法,让我删除第一个引用(它实际上与其他三个共享一些函数和对象),问题就解决了。