MsBuild任务GenerateDeploymentManifest.CreateDesktopShortcut不起作用

时间:2011-01-06 14:02:42

标签: msbuild clickonce msbuild-task

在自动化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">

我错过了什么吗?

1 个答案:

答案 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)"
                                />