Войти

Показать полную графическую версию : [решено] 'chcp" не является внутренней командой или глюки cmd


Starter1
03-11-2011, 16:09
При запуске батника выдаёт вот это:

"chcp" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
"more" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
"chcp" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
Для продолжения нажмите любую клавишу . . .
Сам батник вот этот:

@echo off
setlocal

for /f "tokens=2 delims=:" %%i in ('chcp') do (
set sPrevCP=%%i
chcp 1251 >nul
)

for /f "usebackq delims=" %%i in (
`@"%systemroot%\system32\mshta.exe" "javascript:var objShellApp = new ActiveXObject('Shell.Application');var Folder = objShellApp.BrowseForFolder(0, 'SELECT FOLDER',1, '::{20D04FE0-3AEA-1069-A2D8-08002B30309D}');try {new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(Folder.Self.Path)};catch (e){};close();" ^
1^|more`
) do set sFolderName=%%i

chcp %sPrevCP% >nul

if defined sFolderName (
echo Выбрана папка: [%sFolderName%].
) else (
echo Папка не была выбрана.
)

endlocal
pause

И так любой батник. Хотя раньше они все работали.

ОС Win7 x64, и разрабатывались все батнике на этой же системе. ОС не переустанавливал. Антивирус не менял.

Petya V4sechkin
03-11-2011, 16:37
Starter1, проверьте наличие этих команд (файлов chcp.com и more.com) в папке \Windows\System32. Если они там есть, возможно, у вас испорчена системная переменная PATH. Проверьте раздел реестра "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", тип параметра Path должен быть REG_EXPAND_SZ. Кривые инсталлеры некоторых программ (например, MySQL) изменяют тип на REG_SZ, в результате командный процессор не может найти файлы в системных папках.

Starter1
03-11-2011, 16:58
Petya V4sechkin, chcp.com more.com есть.
В реестре действительно Path изменён. Кстати там пишется не всеми большими крупными буквами а именно Path а не PATH. Как вы и говорили он имеет тип REG_SZ и значение ему присвоено C:\Program Files (x86)\IVT Corporation\BlueSoleil\Mobile . Кстати я BlueSoleil недавно и устанавливал. Значение нужно как-то менять или просто сменить тип и всё?

Petya V4sechkin
03-11-2011, 17:10
Starter1, в Windows 7 значение по умолчанию
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShel l\v1.0\




© OSzone.net 2001-2012