我正在使用clickonce进行Windows窗体应用程序。我必须部署一些资源程序集。这些程序集位于我的项目中的文件夹中(不作为参考)。它们标记为BuildAction = content,CopyToOutputDir = Copy If Newer。通过此配置,我收到了警告MSB3178: Assembly '' is incorrectly specified as a file.
当我将BuildAction设置为none时,警告会消失,但必须部署的程序集不会出现在ClickOnce应用程序文件中。
我想在没有此警告的clickonce发布中添加这些程序集(有很多),并且不在项目中添加这些dll作为引用。我研究了很多,但找不到禁用警告的解决方案。
修改
仅当我设置"启用Clickonce安全设置"时,警告才会出现。 ="真"在"项目/属性/安全选项卡"
示例项目:
Click to download the sample project
只需构建并检查警告。
答案 0 :(得分:6)
抑制MSBuild警告仍然
。MSBuild会抛出MSB前缀的警告。目前,我们无法抑制MSBuild警告。
您可以在.csproj文件的PropertyGroup中禁用一些内容,例如:
< ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>无< / ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
但错误地指定为文件警告不存在。
<小时/> 由于第3方DLL的文件扩展名无法修复MSB3178的根本原因,因此您有理由忽略该特定警告。