问题标签 [signtool]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
9585 浏览

windows-8 - 尝试重新打包 APPX 包时出现 SignTool 内部错误?

我正在分析现有的 Windows 应用商店应用程序并对其进行修改,以确保我公司的混淆器可以与它们一起使用。

不过,我在这样做时遇到了一些问题。我可以很容易地从商店获取一个 APPX 包(需要 Fiddler 来获取 URL)。然后我可以使用任何解压缩程序将 appx 解压缩到一个文件夹中。然后我可以在 APPX 中获取程序集并稍微修改 IL。然后我重新制作并签署包:

然后我得到一个signtool错误:

然后在尝试使用 Visual Studio 创建的用于安装/旁加载任何 APPX 包的标准 powerscript 文件安装它时当然会出错。

我已经对从 Visual Studio 生成的包使用了这个确切的过程。临时密钥是否绑定到特定包或其他东西?我错过了什么?这是signtool中的错误吗?

0 投票
0 回答
376 浏览

c# - 在 .NET 的一个解决方案中对多个项目进行代码签名

我是 .Net 的新手,我收到了一项任务,我应该用证书签署现有的 WPF .net 解决方案。问题是,该解决方案由几个项目组成,其中一些是安装程序,一个是更新服务,有几个库,一个是实际应用程序。我们正在分发安装程序供人们使用。

所以我的问题是:我需要签什么?到目前为止,我们只是在 Visual Studio 之外签署了已编译的安装程序,但我不确定这是否足够。我应该单独签署所有项目吗?是否有一些自动化功能,或者我每次都必须通过signtool手动签名?还有很多关于clickonce签名,强名称,签名程序集,签名清单,签名文件的文本......我对这一切有点迷茫,所以有人可以澄清一下这些的主要区别和用法是什么选项?十分感谢 :)

0 投票
2 回答
4062 浏览

windows-7 - 使用 signtool 签名 CAB 文件不再起作用(签名者的证书对签名无效)

几个月前,a 能够使用我在服务器上创建的测试证书成功签署 CAB 文件。以下是我采取的步骤:

makecert.exe -sv "Demo.pvk" -n "CN=Demo Company,E=demo@gmail.com" "Demo.cer"

cert2spc.exe "Demo.cer" "Demo.spc"

pvk2pfx.exe -pvk "Demo.pvk" -pi "pvk_password" -spc "Demo.spc" -pfx "Demo.pfx" -po "pfx_password"

signtool.exe 签名 /f "Demo.pfx" /p "pfx_password" /v "D:\Setup.cab"

除了最后一个使用signtool返回的步骤之外,所有步骤都成功:“签名者的证书对签名无效”。我已经在网上对这个错误进行了研究,但实际上并没有解决我的问题。由于 pfx 已过期,通常会创建此错误,但此处并非如此。我已成功将证书导入本地证书存储并检查了它的有效性。

为什么即使我重新创建它,我也无法再用我的 pfx 签署 CAB?是否有一些 Windows 更新负责此更改?

我愿意接受有关使用命令提示符使用 pfx 签署 CAB 的任何其他方式的建议。

0 投票
1 回答
637 浏览

c# - 防止证书不可用时运行“signtool.exe”命令

我将以下内容添加到构建事件中的构建后命令行中,以使用证书对应用程序 EXE 文件进行签名:

当证书“XXX INC”不可用时,如何防止此行执行?

0 投票
1 回答
1960 浏览

windows-8 - 如何使用 Windows 8 RT 的开发人员许可证手动签署 exe 文件

我为 Windows 8 RT 制作了一个 exe 文件。但是当我想运行时,显示一条错误消息:

我获得了windows 8 RT 的开发者许可证。有了这个许可证, visual studio 2012可以在我的表面上远程部署和运行 Metro 应用程序。

但我想使用signtool.exe使用此证书手动签署我的 exe 文件:

我的问题是我不知道我的开发人员许可证的“CertStoreName”“主题名称”。我怎样才能得到这些名字。

0 投票
7 回答
46172 浏览

msbuild - 使用 Visual Studio 2012 时 SignTool.exe 或“Windows Kits”目录的路径

使用 Visual Studio 2012 时如何获取 SignTool.exe 的路径?

在 Visual Studio 2010 中,您可以使用

$(FrameworkSDKDir)在哪里

但在 Visual Studio 2012 中,$(FrameworkSDKDir)

和 SignTool 在

除了硬编码(我试过FrameworkSDKDirand WindowsSDKDir,但都指向 v8.0A 目录)之外,有没有办法获得这个目录的路径。

(我知道SignFile MSBuild任务,但我不能使用它,因为它不接受证书密码。)

0 投票
1 回答
1773 浏览

c# - SignerSign 错误 - 没有为商店或对象指定提供者

我正在开发 ac# .net 3.5 应用程序(编译到 anycpu)

我需要签署一个可执行文件。我尝试使用此处的代码进行一些修改。我没有在商店中搜索证书,而是从 pfx 文件中加载了它:

并像这样更改方法符号:

然后我得到这样的提供者信息:

问题是在某些机器上它工作得很好,但在其他一些机器上我收到以下错误:错误代码 0x80092006 - 没有为商店或对象指定提供程序。

我尝试将 SignTool.exe 与相同的 pfx 文件一起使用,它工作正常。

我试图调查可能导致此行为的原因,但我找不到任何有关此错误正在发生的提示。

有谁知道为什么会发生?

0 投票
1 回答
2532 浏览

msbuild - 返回 MSB3481 的 MSBuild SignFile 任务:找不到签名证书

我最近获得了一个新的代码签名证书。我正在使用 MSBuild 的 SignFile 任务对应用程序清单进行签名。由于某种原因,任务正在返回:

证书肯定在我的个人存储中,我可以在 certmgr.msc 中看到它。而且我相信我以同一用户身份登录,因为我能够使用同一个人商店中的不同证书签署清单。不知道为什么找不到这个新证书。

我什至可以使用带有新证书的 SHA1 的 signtool.exe 来对文件进行签名。但我真的更喜欢将我们现有的 MSBuild 与 SignFile 任务一起使用。任何想法这里可能出了什么问题?

我也尝试过在有和没有完整证书路径的情况下导入证书。

0 投票
1 回答
2239 浏览

code-signing - 代码签名证书过期问题

我的代码签名证书有效期为 2012 年 3 月 3 日至 2013 年 3 月 3 日(Comodo)

  1. 更新它会给我一个新证书(.pfx 文件)吗?或者我可以在支付费用后在 2013 年 3 月 3 日之后使用当前证书(.pfx 文件)吗?

  2. 如果我不使用新证书签署 exe 和设置,或者我不购买新证书,现有签名的应用程序会在 2013 年 3 月 3 日之后的安装/执行期间显示“未经验证的发布者”或任何其他错误。请注意,我签署了软件的所有 dll、exe 以及最终设置 exe

  3. 我是否必须在续订时获取新的 .snk 文件,还是可以使用现有的 .snk 文件?

  4. 我可以使用相同的 .snk 文件来签署不同的软件及其设置文件吗?和不同的exe,dll在同一个设置中?.snk 文件是否与一个 exe 相关联?还是可以在任何exe(.NET和VB6)上使用?

我有 Windows 8 Pro + Visual Studio 6 SP6 + Visual Studio 2012 Ultimate + Microsoft 8 SDK 独立安装

在此处输入图像描述

在此处输入图像描述

0 投票
2 回答
906 浏览

clickonce - 嵌入清单后无法签署引导程序可执行文件 (setup.exe)

我们正在使用 Nant 准备使用 Clickonce 设置我们的软件。

使用 signtool 对 dll(s) 和 exe(s) 进行签名。

标志工具命令signtool sign /f ${certFile} /p ${certFilePwd} {path of setup.exe}

使用Mt.exe将清单嵌入 exe 文件中。

山命令mt -manifest {manifest file} -outputresource:{filepath};#1

我们有两个exe文件。一个是我们的 app.exe,第二个是 setup.exe(由 clickonce 创建的引导程序)

app.exe 在嵌入清单后签名没有问题。

但是在嵌入清单后签名 setup.exe给出以下错误:

SignTool Error: SignedCode::Sign returned error: 0x80070057. The parameter is incorrect.

清单文件包含:

如果我在嵌入清单之前签名没有错误,但它不能工作,因为任何文件都需要在更改后辞职。

我还尝试了以下步骤:

  1. 登录 setup.exe
  2. 嵌入清单
  3. 退出 setup.exe(此步骤中的错误与上述相同)

有没有解决这个问题的方法/解决方法?