在一个大型的、预先存在的代码库中,我有几个 *.dll 需要向 COM 互操作注册。
这些清单注册正在使用 mt.exe 以下列方式作为构建后事件执行:
mt.exe -manifest "$(ProjectDir)myProjectManifestFragment.xml" -nodependency -managedassemblyname:"$(TargetFileName)" -out:"$(TargetName).manifest" -outputresource:"$(TargetFileName)";#2
在这种情况下,不需要显式 GUID,但是,mt.exe 自然会生成以下性质的混乱警告:
mt.exe : genman warning G81010014: Explicit guid not defined for type myInternalType
我的问题是:如何在不明确定义 GUID 的情况下抑制这些警告?
请注意,我不想接受构建后事件并重定向输出(a la > NUL),因为我仍然希望接收错误通知。有一种方法可以只抑制 mt.exe 中的标准错误,但我只想抑制这个警告。我什至会很高兴抑制 mt.exe 生成的所有警告(不一定是 G81010014)。
MSDN 上的 mt.exe 文档似乎只显示了一个详细标志,但无法将详细级别更改为“简洁”模式,在这种模式下警告将被抑制。在 Visual Studio 2010 中,显然有一种方式可以抑制特定警告,但我无法确定这如何适用于特定的构建后事件,更不用说仅由 mt.exe 生成的警告了。
先感谢您!这实际上是我在 Stack Overflow 上的第一篇文章 :) 如果我需要更具体、更广泛等,请告诉我... ^_^
干杯!
-卡达伊