我正在使用Windows10。我没有makecert.exe,当我尝试运行命令以生成诸如
makecert.exe
我收到错误消息:
'makecert'不被识别为内部或外部命令, 可操作的程序或批处理文件。
并且我已经为Windows 10安装了Windows SDK。
答案 0 :(得分:3)
可能是已安装,但可能不在路径中。
例如,我可以在public function index(){
$users = User::whereNotNull('date_of_birth')->take(10);
if(!empty($users)){
$validusers = $users->age();
}
return view('egistrations.index', compact('validusers'));
}
下找到它,但我也可以在C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64
下找到另一个。路径中的确切版本会根据您安装的SDK的确切版本而有所不同。
尽管这些路径都不在我的C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x86
环境变量中(并且我不记得安装SDK后明确删除了它),所以我不能只在命令行说PATH
,我必须为要运行的路径提供完整路径。
makecert
命令是尝试查找副本位置的便捷方法。在这里,我仅将搜索范围限制在SDKs目录中,但是您可以根据需要搜索整个硬盘驱动器:
where
答案 1 :(得分:1)
这是我安装makecert.exe文件的方式
(注意:我首先安装了Windows 10 SDK,但是此版本未在“ bin”目录中安装makecert.exe。没问题!)
答案 2 :(得分:0)
我知道现在为时已晚,但是我通过安装旧的Windows 10 SDK版本解决了这个问题:
答案 3 :(得分:0)
我只是下载此文件并将其移至c:/ winwdows / system32
然后在命令提示符下运行我的命令:
Makecert -r -pe -n CN =“ MycomputerCertificate” -b 01/01/2020 -e 12/22/2030 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine -sky exchange- sp“ Microsoft RSA SChannel加密提供程序” -sy 12
答案 4 :(得分:0)
当前已折旧的 makecert ,这种具有Powershell' New-SelfSignedCertificate '(以管理员身份)的新方式,例如:
1.- We create a new root trusted cert:
$rootCert = New-SelfSignedCertificate -Subject 'CN=TestRootCA,O=TestRootCA,OU=TestRootCA' -KeyExportPolicy Exportable -KeyUsage CertSign,CRLSign,DigitalSignature -KeyLength 2048 -KeyUsageProperty All -KeyAlgorithm 'RSA' -HashAlgorithm 'SHA256' -Provider 'Microsoft Enhanced RSA and AES Cryptographic Provider'
2.- We create the cert from the root trusted cert chain:
New-SelfSignedCertificate -DnsName "localhost" -FriendlyName "MyCert" -CertStoreLocation "cert:\LocalMachine\My" -Signer $rootCert -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.1") -Provider "Microsoft Strong Cryptographic Provider" -HashAlgorithm "SHA256" -NotAfter (Get-Date).AddYears(10)
3.- We copy the thumbprint returned by the last command
4.- (If neccesary) We remove the last association ip/port/cert:
netsh http delete sslcert ipport=0.0.0.0:443
5.- We associate the new certificate with any ip and port 443 (the appid value does not matter, is any valid guid):
netsh http add sslcert ipport=0.0.0.0:443 appid='{214124cd-d05b-4309-9af9-9caa44b2b74a}' certhash=here_the_copied_thumbprint
6.- Now, you must open MMC (Certificates Local Computer) and drag and drop the TestRootCA Personal/Certificates folder to Trusted Root Certification Authorities/Certificates.
这些命令还解决了Google Chrome稍后返回的错误 ERR_CERT_WEAK_SIGNATURE_ALGORITHM ,因为证书是使用SHA1而不是SHA256创建的。
答案 5 :(得分:0)
如果您安装了 Fiddler,Fiddler 也会附带 makecert.exe。它位于
C:\Users\<yourwindowslogin>\AppData\Local\Programs\Fiddler\makecert.exe