Fehler beim Parameter "-e" beim Ausführen des Befehls "makecert" in Powershell

864
JennaTime

Ich versuche, den folgenden Befehl in Powershell auf einem Computer auszuführen, auf dem Server 2012 ausgeführt wird:

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 

Ich erhalte den Fehler:

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 

Also habe ich diesen Befehl ausgeführt, nachdem ich online recherchiert hatte:

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 

Jetzt erhalte ich diesen Fehler:

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 

Ich frage mich, ob jemand eine Lösung für dieses Problem kennt. Ich habe gesehen, dass eine Person vor ungefähr 8 Jahren ein Ticket für Microsoft Connect eingereicht hat (Ticket # 183738), aber ich konnte nicht auf Connect zugreifen, um herauszufinden, was das Ergebnis war.

0
Sind Sie sicher, dass Sie ein Dienstprogramm namens makecert haben? Warum versuchen Sie außerdem, makecert mit Set-Location zu beginnen? Das macht wirklich keinen Sinn. Zoredache vor 9 Jahren 0
Ich habe die Datei makecert.exe in dem Ordner, aus dem ich versuche, sie auszuführen. Gibt es noch etwas, was ich brauche, um es in Gang zu bringen? JennaTime vor 9 Jahren 0
Das hat funktioniert! Vielen Dank! Ich habe meinen Befehl folgendermaßen geändert:. \ Makecert.exe -r -pe -n CN = "*. $ DomainVariable" -b 01/01/2000 -e 01/01/2036 -eku 1.3.6.1.5.5.7.3. 1 -ss meine -sr localmachine JennaTime vor 9 Jahren 0
Ok, ich habe das als Antwort hinzugefügt. Zoredache vor 9 Jahren 0

1 Antwort auf die Frage

0
Zoredache

Wenn es um Powershell geht, müssen Sie wirklich den vollständigen Namen Ihrer Nicht-Powershell-Befehle angeben. Stattdessen makecertsollten Sie verwenden makecert.exe.