PDA

Показать полную графическую версию : [решено] кодировка в bat


Temyraz@fb
12-04-2012, 10:12
всем доброго времени суток. у меня вот какая проблема, через inno setup запуская батник с параметрами. в параметре передаются пароль и путь. если путь полностью на английском, то проблем нет, а если встречаются русские буквы то батник выдает ошибку. вот сам батник

CLS
ECHO OFF
For /F "tokens=*" %%k In (text.txt) Do For /F "tokens=*" %%j In ('Echo %%k') Do set PGBIN=%%j
SET PGPASSWORD=%1
SET DUMPPATH=%2
%~d0
CD %~dp0
SET DATETIME=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2% %TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%
cd %PGBIN% .\pg_dump -i -h localhost -p 5432 -U postgres -c -Fc -f "%DUMPPATH%\sc.backup" "sc"
IF NOT %ERRORLEVEL%==0 GOTO Error
GOTO Successfull
:Error
DEL %DUMPPATH%
CHCP 1251
MSG * "Ошибка при создании базы данных"
GOTO End
:End
вот эта значение SET DUMPPATH=%2 может иметь русский текст.
что посоветуете?

DesmondTruman
13-04-2012, 01:10
В начале кода просто напишите chcp 1251

j0nathan
13-04-2012, 16:43
бл# а я не так давно такую же ошибку искал как исправить, так на одном форуме написали что воспринимает dos кодировку и я переводил слова )) фак)




© OSzone.net 2001-2012