我遇到一个问题,当我通过 MSBuild (4.0) 发布我的 ClickOnce 应用程序时,publish.htm(或 default.htm)没有在 app.publish 文件夹中创建。
当通过 Visual Studio 发布时,它被装箱...
在我的 .csproj 文件中,我设置了以下属性,但它仍然无法正常工作...
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>
<WebPage>default.htm</WebPage>
有什么想法吗?
谢谢
最佳答案
我找到了一个很好的解决方案here .您可以使用内部带有 {VERSION} 占位符的 publish.htm 模板。 MSBuild Community Tasks是 FileUpdate 任务所必需的。
BUILD_VERSION - 环境变量,由我的构建脚本设置。 PublishDir 属性在 msbuild 的参数中设置。
<!-- .... -->
<Target Name="DoPublish">
<MSBuild Projects="$(ProjectFileName)" Targets="Publish" Properties="ApplicationVersion=$(BUILD_VERSION)" />
<!-- Write publish.htm file for ClickOnce -->
<Copy SourceFiles="$(ProjectDir)\publish.htm" DestinationFiles="$(PublishDir)\publish.htm"/>
<FileUpdate Files="$(PublishDir)\publish.htm"
IgnoreCase="true"
Multiline="true"
Singleline="false"
Regex="{VERSION}"
ReplacementText="$(BUILD_VERSION)"/>
</Target>
</Project>
关于c# - MSBuild 未生成发布网页 (ClickOnce),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19011427/