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

893
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 10 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 10 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 10 Jahren 0
Ok, ich habe das als Antwort hinzugefügt. Zoredache vor 10 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.