|
как сменить кодировку записи ping`а в лог-файл ?
| ☑ |
0
lim9
07.07.14
✎
13:20
|
получаю пинг вот так:
IPАдрес="ya.ru";
objShell = Новый COMОбъект("WScript.Shell") ;
objScriptExec = objShell.Exec("ping.exe -n 1 " + IPАдрес) ;
strPingResults = (objScriptExec.StdOut.ReadAll()); // это строка с результатом
а в результате в строке strPingResults все досовские(системные русские) слова заменяются иероглифами.
(ЋЎ¬Ґ Ї ЄҐв ¬Ё б ya.ru [213.180.193.3] б 32 Ў ©в ¤ ле:
ЋвўҐв ®в 213.180.193.3: зЁб«® Ў ©в=32 ўаҐ¬п=76¬б TTL=48
‘в вЁбвЁЄ Ping ¤«п 213.180.193.3:
Џ ЄҐв®ў: ®вЇа ў«Ґ® = 1, Ї®«г祮 = 1, Ї®вҐап® = 0
(0% Ї®вҐам)
ЏаЁЎ«Ё§ЁвҐ«м®Ґ ўаҐ¬п ЇаЁҐ¬ -ЇҐаҐ¤ зЁ ў ¬б:
ЊЁЁ¬ «м®Ґ = 76¬бҐЄ, Њ ЄбЁ¬ «м®Ґ = 76 ¬бҐЄ, ‘।ҐҐ = 76 ¬бҐЄ)
Как это побороть?
|
|
1
f_vadim
07.07.14
✎
13:22
|
попробуй chcp
|
|
2
lim9
07.07.14
✎
13:26
|
а какую поставить для 1с ?
|
|
3
f_vadim
07.07.14
✎
13:27
|
хз. я бы попробовал 1251 или utf8
|
|
4
f_vadim
07.07.14
✎
13:28
|
utf8 - 65001
|
|
5
lim9
07.07.14
✎
13:36
|
objScriptExec = objShell.Exec("chcp 1251");
дает ошибку:
Произошла исключительная ситуация (WshShell.Exec): Не удается найти указанный файл.
|
|
6
zlnk
07.07.14
✎
13:41
|
скачать альтернативный пинг на английском?
|
|
7
f_vadim
07.07.14
✎
13:43
|
вот так сработало
objScriptExec = objShell.Exec("C:\WINDOWS\system32\chcp.com 1251");
|
|
8
Kalambur
07.07.14
✎
13:44
|
пиши в файл
|
|
9
Kalambur
07.07.14
✎
13:50
|
так стоп, а где запись в файл? ) файл потом можно прочитать на любой кодировке
|
|
10
lim9
07.07.14
✎
13:51
|
благодарю f_vadim, так сработало
|
|
11
IVT_2009
07.07.14
✎
13:55
|
objScriptExec = objShell.Exec("ping.exe -n 1 " + IPАдрес+" >>rez.txt") ;
так записать в файл. если просто > то перепишет. Иначе - допишет
|
|
12
lim9
07.07.14
✎
14:03
|
понял, спасибо!
|
|
Ошибка? Это не ошибка, это системная функция.