Quando se trata de Powershell, você realmente precisa fornecer o nome completo dos comandos que não são do PowerShell. Então, em vez de makecert
, você deve usar makecert.exe
.
Estou tentando executar o seguinte comando no Powershell em uma máquina que executa o Server 2012:
makecert -r -pe -n CN="*.$domainVariable" -b 01/01/2000 -e 01/01/2036 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine
Estou recebendo o erro:
makecert : The term 'makecert' is not recognized as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ makecert -r -pe -n CN="*.$domainVariable" -b 01/01/2000 -e 01/01/2036 -eku 1.3.6 ...
+ ~~~~~~~~
+ CategoryInfo : ObjectNotFound: (makecert:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Então eu executei este comando depois de fazer algumas pesquisas on-line:
set-location 'C:\Program Files\QACloneAutomation' makecert -r -pe -n CN="*.$domainVariable" -b 01/01/2000 -e 01/01/2036 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine
Agora estou recebendo este erro:
Set-Location : Parameter cannot be processed because the parameter name 'e' is ambiguous. Possible matches include:
-ErrorAction -ErrorVariable.
At C:\Users\Administrator\Desktop\cloneSetup.ps1:48 char:107
+ ... -b 01/01/2000 -e 01/01/2036 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine
+ ~~
+ CategoryInfo : InvalidArgument: (:) [Set-Location], ParameterBindingException
+ FullyQualifiedErrorId : AmbiguousParameter,Microsoft.PowerShell.Commands.SetLocationCommand
Eu estou querendo saber se alguém sabe de uma resolução para este problema. Eu vi uma pessoa ter enviado um ticket para o Microsoft Connect cerca de 8 anos atrás para o mesmo problema (ticket # 183738), mas não consegui acessar o Connect para descobrir qual era o resultado.
Quando se trata de Powershell, você realmente precisa fornecer o nome completo dos comandos que não são do PowerShell. Então, em vez de makecert
, você deve usar makecert.exe
.
Tags sdk powershell certificate