Kamerton Asked:2020-11-15 22:31:08 +0000 UTC2020-11-15 22:31:08 +0000 UTC 2020-11-15 22:31:08 +0000 UTC RunAs 窗口中的 WPF 应用程序发布者 772 您能告诉我如何在 UAC 请求窗口中指定 WPF 应用程序的发布者吗? 以管理员身份运行应用程序时出现的窗口 (runas)。 wpf 1 个回答 Voted Best Answer MSDN.WhiteKnight 2020-11-16T00:02:35Z2020-11-16T00:02:35Z 使用makecert创建您的证书 打开 Visual Studio 命令提示符并运行以下命令 makecert -r -pe -n "CN=Vasya Pupkin Software" -b 01/01/2018 -e 01/01/2028 -sky exchange -ss my 证书将出现在当前用户的存储中。打开mmc,执行“文件-添加或删除管理单元”,选择“证书”。我们找到创建的证书,通过在向导中选择“导出私钥”、“导出所有扩展属性”选项并指定输出文件的 pfx 格式来进行导出。结果,我们得到了一个 .pfx 文件,其中包含一个证书和一个可用于签署应用程序的私钥。 让我们再次导出,这次拒绝导出私钥并选择 cer 格式。结果,我们将获得一个没有私钥的证书文件,这是分发到目标机器所必需的。 使用Signtool对程序进行签名 在 Visual Studio 命令行上,运行 signtool sign /f "(путь к pfx)" /p (пароль закрытого ключа) /v "(путь к exe)" 我们得到一个签名的 exe 文件。 在程序将运行的机器上,将证书(不带私钥)添加到受信任的根证书颁发机构存储区。 为此,在“证书”管理单元中,选择存储库,执行“操作”-“所有任务”-“导入”并指定 .cer 文件。 结果应该是这样的: 笔记。如果您需要一个证书才能在所有机器上工作,它必须由普通 CA 颁发。 结果:
打开 Visual Studio 命令提示符并运行以下命令
证书将出现在当前用户的存储中。打开mmc,执行“文件-添加或删除管理单元”,选择“证书”。我们找到创建的证书,通过在向导中选择“导出私钥”、“导出所有扩展属性”选项并指定输出文件的 pfx 格式来进行导出。结果,我们得到了一个 .pfx 文件,其中包含一个证书和一个可用于签署应用程序的私钥。
让我们再次导出,这次拒绝导出私钥并选择 cer 格式。结果,我们将获得一个没有私钥的证书文件,这是分发到目标机器所必需的。
在 Visual Studio 命令行上,运行
我们得到一个签名的 exe 文件。
为此,在“证书”管理单元中,选择存储库,执行“操作”-“所有任务”-“导入”并指定 .cer 文件。
结果应该是这样的:
笔记。如果您需要一个证书才能在所有机器上工作,它必须由普通 CA 颁发。
结果: