Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.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
C# 如何将数字签名添加到我的项目中_C#_.net_Vb.net_Certificate - Fatal编程技术网

C# 如何将数字签名添加到我的项目中

C# 如何将数字签名添加到我的项目中,c#,.net,vb.net,certificate,C#,.net,Vb.net,Certificate,当我尝试运行mi编译的应用程序时,Windows会播发该应用程序没有任何签名,并询问我是否真的要运行我的应用程序 我不知道wich导致这种情况的原因,但我认为为了避免这种情况,我需要一个数字签名,因此从web上我遵循以下步骤: 我使用Windows SDK的makecert工具创建了自己的证书,下面是一个代码示例: makecert -r -pe -a sha1 -n "CN=name, E=name@Hotmail.com, C=US" -b 01/01/2013 -e 0

当我尝试运行mi编译的应用程序时,Windows会播发该应用程序没有任何签名,并询问我是否真的要运行我的应用程序

我不知道wich导致这种情况的原因,但我认为为了避免这种情况,我需要一个数字签名,因此从web上我遵循以下步骤:

我使用Windows SDK的makecert工具创建了自己的证书,下面是一个代码示例:

makecert -r -pe -a sha1 -n "CN=name, E=name@Hotmail.com, C=US" -b 01/01/2013 -e 01/01/2050 -ss My
然后我可以在“个人”文件夹中看到我自己的证书:

现在,我已使用以下命令导出证书:

certutil -exportPFX -p "Password" my 586a7358ebdce8854def26875f0f38ab "C:\Test.pfx"
但当我在项目设置中打开签名选项卡并选择“从文件中选择…”时,VS说:

The selected certificate is not valid for code-signing. Choose another certificate file. 

我做了坏事?我不知道如何正确地对我的项目进行代码签名, 也许我需要一个“.cer”证书而不是“.pfx”证书?
那么我如何才能生成有效的CER证书呢?

这个问题提供了一个答案:(查看该页面上接受的答案)最后我通过命令行完成了,谢谢您的评论: