Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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
在使用TFS在线服务构建Clickonce应用程序时,是否有任何方法可以对其进行签名?_Tfs_Azure Devops - Fatal编程技术网

在使用TFS在线服务构建Clickonce应用程序时,是否有任何方法可以对其进行签名?

在使用TFS在线服务构建Clickonce应用程序时,是否有任何方法可以对其进行签名?,tfs,azure-devops,Tfs,Azure Devops,我已启用登录我的单击一次应用程序 但是生成服务器(TFS online services)没有证书。是否有任何方法可以将证书包含在repository中,并让生成服务器对其进行签名,还是必须禁用签名并在之后手动执行 我没有从商店领取证书,而是签入了一个文件,从文件中领取 Build server然后为我提供: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(2482):无法导入以下密钥文件:。密钥文

我已启用登录我的单击一次应用程序

但是生成服务器(TFS online services)没有证书。是否有任何方法可以将证书包含在repository中,并让生成服务器对其进行签名,还是必须禁用签名并在之后手动执行

我没有从商店领取证书,而是签入了一个文件,从文件中领取

Build server然后为我提供:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(2482):无法导入以下密钥文件:。密钥文件可能受密码保护。若要更正此问题,请尝试再次导入证书或手动将证书导入当前用户的个人证书存储


(我是否打算在没有密码的情况下签入一个,而其他人也是这样做的?在没有密码的情况下拥有私钥是否不危险。)

我创建了使用Mage.exe和Signtool.exe的CodeActivite,并将签名构建到我的构建模板中


From/t:publish all files具有.deploy扩展名,我必须创建一个XML任务来更新清单XML以支持此操作。

我在存储库中创建了以下powershell脚本:

 [CmdletBinding()]
 param(
     [Parameter(Mandatory=$True)]
     [string]$signCertPassword
    )

$SecurePassword = $signCertPassword | ConvertTo-SecureString -AsPlainText -Force
Write-Output "Importing pfx"

Import-PfxCertificate -FilePath "YourPfxFile.pfx" -Password $SecurePassword Cert:\CurrentUser\My

并将密码作为变量传递(锁定)

你能详细说明一下你是如何做到这一点的吗?我现在记不起来了,我必须挖掘代码,然后重新开始构建工作。如果下周我有时间,我会写一篇关于它的博客文章,然后带着它回到这里,但没有承诺。这之后是什么:
Cert:\CurrentUser\My
?那是什么?一条路?就这些。这是CertStoreLocation。有更多的信息在Ok,明白了。谢谢