在自动化ClickOnce发布过程中,我们使用Mage生成应用程序清单和MsBuild GenerateDeploymentManifest任务。
<GenerateDeploymentManifest AssemblyName="App.exe.application"
AssemblyVersion="$(AppVersion)"
Product="Application"
Install="true"
UpdateEnabled="true"
UpdateMode="Foreground"
OutputManifest="$(PrepareFolder)\App.exe.application"
MapFileExtensions="true"
EntryPoint="@(RelativeApplicationManifestFile)"
CreateDesktopShortcut="true"
MinimumRequiredVersion="$(AppVersion)"
/>
但CreateDesktopShortcut没有效果,也没有在部署清单文件中创建所需的标记。
获取此信息:
<deployment install="true"
mapFileExtensions="true"
minimumRequiredVersion="2.19.13.0">
而不是
<deployment install="true"
mapFileExtensions="true"
minimumRequiredVersion="2.19.13.0"
co.v1:createDesktopShortcut="true">
我错过了什么吗?
答案 0 :(得分:6)
您需要将TargetFrameworkVersion属性添加到GenerateDeploymentManifest任务中。它应该是“3.5”或“4.0”,具体取决于您正在构建的框架版本。任务默认为“2.0”,这就是您必须明确设置它的原因。
在任务中检查必须将其设置为“3.5”或更高,以便CreateDesktopShortcut实际生成任何内容。
<GenerateDeploymentManifest AssemblyName="App.exe.application"
AssemblyVersion="$(AppVersion)"
Product="Application"
Install="true"
UpdateEnabled="true"
UpdateMode="Foreground"
OutputManifest="$(PrepareFolder)\App.exe.application"
MapFileExtensions="true"
EntryPoint="@(RelativeApplicationManifestFile)"
CreateDesktopShortcut="true"
TargetFrameworkVersion="3.5"
MinimumRequiredVersion="$(AppVersion)"
/>