Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 通过NANT脚本中的msbuild命令访问Publisher属性_.net_Wpf_Msbuild_Clickonce_Nant - Fatal编程技术网

.net 通过NANT脚本中的msbuild命令访问Publisher属性

.net 通过NANT脚本中的msbuild命令访问Publisher属性,.net,wpf,msbuild,clickonce,nant,.net,Wpf,Msbuild,Clickonce,Nant,我已经编写了NANT构建脚本来部署clickOnce WPF应用程序 我不明白的是,如何设置发布者参数 这是生成后生成的清单的一部分: <description asmv2:publisher="TestApplication" co.v1:suiteName="xOrg" asmv2:product="TestApplication" xmlns="urn:schemas-microsoft-com:asm.v1" /> 我正在通过msbuild部署,使用: <targ

我已经编写了NANT构建脚本来部署clickOnce WPF应用程序

我不明白的是,如何设置发布者参数

这是生成后生成的清单的一部分:

<description asmv2:publisher="TestApplication" co.v1:suiteName="xOrg" asmv2:product="TestApplication" xmlns="urn:schemas-microsoft-com:asm.v1" />

我正在通过msbuild部署,使用:

<target name="BuildTestApplication" depends="Clean" description="Build">
    <property name="publishFolderParameter" value="/p:PublishDir=${testPublishFolder}" />
    <echo message="Building..." />  
        <exec program="${msbuildExe}" workingdir="." verbose="true">
            <arg value="${projectFile}" />
            <arg value="/target:publish" />
            <arg value="${publishFolderParameter}" />
            <arg value="/property:ApplicationVersion=${version}" />
        </exec>
    <echo message="Built" />
</target>

如何通过msbuild参数更改发布者属性

我尝试补充:

<arg value="/property:Publisher=${publisherName}" />


没有成功

附加问题:安装应用程序后,什么决定了“开始”菜单中的结构(所有程序的名称)


提前谢谢你。

我想你遗漏了引号。试一试

<arg value="/property:PublisherName=&quot;${publisherName}&quot;" />

为出版商名称和

<arg value="/property:ProductName=&quot;${productName}&quot;" />


对于应在“开始”菜单中设置快捷方式名称的ProductName。

我认为您缺少引号。试一试

<arg value="/property:PublisherName=&quot;${publisherName}&quot;" />

为出版商名称和

<arg value="/property:ProductName=&quot;${productName}&quot;" />


对于应在“开始”菜单中设置快捷方式名称的ProductName。

此属性由Microsoft.Common.targets中的
目标设置。它使用
PublisherName
属性

此属性在.csproj文件中设置。这里的诊断是它根本没有被输入。容易出错,没有默认。在Visual Studio的“项目+属性”的“发布”选项卡中打开.csproj文件。单击“选项”按钮并输入“发布者名称”:


其他字段也应该设置。如果出于某种原因要在NANT脚本中重写此属性,则必须使用硬编码字符串,不能使用${publisherName}。

此属性由Microsoft.Common.targets中的
目标设置。它使用
PublisherName
属性

此属性在.csproj文件中设置。这里的诊断是它根本没有被输入。容易出错,没有默认。在Visual Studio的“项目+属性”的“发布”选项卡中打开.csproj文件。单击“选项”按钮并输入“发布者名称”:


其他字段也应该设置。如果出于某种原因要在NANT脚本中重写此属性,则必须使用硬编码字符串,不能使用${publisherName}。

缺少引号。谢谢但问题是,我正在使用mage.exe进行更新,如果不指定“-Publisher”属性,则会覆盖发布者信息。缺少引号。谢谢但问题是,我正在用mage.exe更新,如果您不指定“-Publisher”属性,则会覆盖发布者信息。谢谢您,帕桑先生,但这是我检查的第一件事。。。问题是我在之后用mage.exe执行-Update。我最近在MS站点上发现了这样一个问题:“如果您正在更新现有清单,并且没有使用此选项指定发布者名称,Mage.exe将使用计算机上定义的组织名称更新清单。若要使用其他名称,请确保使用此选项并指定所需的发布者名称。”谢谢您,Passant先生,但这是我检查的第一件事。。。问题是我在之后用mage.exe执行-Update。我最近在MS站点上发现了这样一个问题:“如果您正在更新现有清单,并且没有使用此选项指定发布者名称,则Mage.exe将使用计算机上定义的组织名称更新清单。若要使用其他名称,请确保使用此选项并指定所需的发布者名称。”