Как установить CertUtils в Windows 7?
Кажется, что моя версия Windows 7 (SP1, с PowerShell 4) не хватает certutil
команда. Я пытался найти способ добавить его вручную, но не получилось. Есть идеи как это сделать?
ОБНОВЛЕНИЕ Благодаря комментариям, я смог найти certutil.exe
файл в \System32\
но я не могу выполнить certutil
команда.
Вот снимок у меня есть:
2 ответа
Если программа не может быть найдена, хотя вы видите этот исполняемый файл в файловых менеджерах, это обычно происходит из-за того, что вы используете 32-битную оболочку, поскольку 32-битные процессы помещаются в перенаправитель файловой системы иSystem32
на самом делеSysWOW64
. Некоторые связанные вопросы:
- Почему я не могу запустить telnet.exe из командной строки Windows 8?
- query.exe не найден
- Странные ошибки CMD только тогда, когда CMD открывается из моей программы
- GNU Make в Windows не видит некоторые исполняемые файлы
В таком случае%windir%\Sysnative\certutil
будет работать, хотя лучше было бы вместо этого использовать 64-битную оболочку
Однако, похоже, это не ваша ситуация , потому что вы можете увидеть certutil.exe в System32. Итак, есть 2 возможности:
Ваша переменная среды повреждена, поэтому ее невозможно найти. всегда должен быть внутри. Вот пример на моем ПК:
PS C:\Users> $env:Path -replace ';', "`n" C:\WINDOWS\system32 C:\WINDOWS C:\WINDOWS\System32\Wbem C:\WINDOWS\System32\WindowsPowerShell\v1.0\ C:\WINDOWS\System32\OpenSSH\ C:\Program Files\dotnet\ C:\Users\user\AppData\Local\Microsoft\WindowsApps C:\Users\user\.dotnet\tools
В отличие от cmd, PowerShell ищет файл в
PATH
во-первых , из соображений безопасности, например, в оболочках POSIX. Так что даже если ты внутри%windir%\System32
он все равно не запустит этот exe-файл, и вам нужно использовать.\certutil
вместо.Твой
PATHEXT
переменная среды повреждена. Это расширения, которые оболочка будет искать, когда вы вводите команду без расширения и содержитCOM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.CPL
по умолчанию . Если нет.exe
в нем ваш файл не может быть найден. Вам нужно бежатьcertutil.exe
явно
В любом случае ваша система может быть каким-то образом сломана, и вам нужно запуститьsfc /scannow
исправить системные файлы и среду
В PowerShell вы должны префикс имени исполняемого файла .\
,
Попробуй с .\certutil.exe
или используйте старый школьный cmd вместо powershell.