 |
|
CMD\BAT\SHELL неправильная кодировка
Вложений: 2
на просторах интернета я нашел батник который может посылать нажатия клавиш на любое открытое окно в виндусе...кароч...с цифрами всё исправно работает...но как дело дошло до букв...толи с кодировкой что толи я криворукий...я тыкал тыкал и в итоге понял как писать русские маленькие буквы... нужно писать большие английские...остальные попытки ничего не дали...кто может помочь?
Код:
@if (@X)==(@Y) @end /* JScript comment
@echo off
cscript //E:JScript //nologo "%~f0" "%~nx0" %*
exit /b %errorlevel%
@if (@X)==(@Y) @end JScript comment */
var sh=new ActiveXObject("WScript.Shell");
var ARGS = WScript.Arguments;
var scriptName=ARGS.Item(0);
var title="";
var keys="";
function parseArgs(){
if (ARGS.Length < 3) {
WScript.Quit(43);
}
title=ARGS.Item(1);
keys=ARGS.Item(2);
}
function escapeRegExp(str) {
return str.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
}
function replaceAll(str, find, replace) {
return str.replace(new RegExp(escapeRegExp(find), 'g'), replace);
}
parseArgs();
keys=replaceAll(keys,"^^","^");
sh.AppActivate(title);
sh.SendKeys(keys);
WScript.Quit(0);
надеюсь что кто-нибудь сможет помочь...
[UPD] если вписывать последовательность символов напрямую в батник а не выдавать их из другого батника то всё работает исправно...
[UPD] я всё починил сам)))тему отмечаю как решено...решение:сохранить файл в кодировке UTF-8 и в батнике написать chcp 65001
|
Цитата:
Цитата Darkar25
надеюсь что кто-нибудь сможет помочь... »
|
Попробуем.
Первой строкой пропишите
chcp 1251
|
Цитата:
Цитата yurfed
Попробуем.
Первой строкой пропишите
chcp 1251 »
|
первой строкой нельзя...батник работать перестанет...написал там где можно...но буквы всё так-же перемешаны...
|
Цитата:
Цитата Darkar25
первой строкой нельзя...батник работать перестанет »
|
С какого перепугу перестанет?
Можете проверить или посмотреть сюда
Цитата:
Цитата Darkar25
написал там где можно... »
|
А где можно?
|
Вложений: 1
Цитата:
Цитата yurfed
Цитата Darkar25:
написал там где можно... »
А где можно? »
|
тут
|
Цитата:
Цитата yurfed
Цитата Darkar25:
первой строкой нельзя...батник работать перестанет »
С какого перепугу перестанет? »
|
я хз...я пробовал уже в начала файла чтото писать...батник подумал что это тоже кусок скрипта и сказал что какаято ошибка компиляции...
|
Цитата:
Цитата Darkar25
.кароч...с цифрами всё исправно работает...но как дело дошло до букв...толи с кодировкой что толи я криворукий...я тыкал тыкал и в итоге понял как писать русские маленькие буквы... нужно писать большие английские...остальные попытки ничего не дали...кто может помочь? »
|
Забудьте про .SendKeys() как про страшный сон и плавно переходите к изучению AutoIt/AutoHotKey.
P.S. С консольными же приложениями так (послать нажатие клавиши) вообще не работают. Там перехватывают стандартные потоки и читают из них или пишут в них.
|
Время: 07:44.
© OSzone.net 2001-