Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - CMD\BAT\SHELL неправильная кодировка

Ответить
Настройки темы
Любой язык - CMD\BAT\SHELL неправильная кодировка

Пользователь


Сообщения: 116
Благодарности: 1

Профиль | Отправить PM | Цитировать


Изменения
Автор: Darkar25
Дата: 09-07-2018
Изображения
Тип файла: png Screenshot_95.png
(48.6 Kb, 3 просмотров)
Тип файла: jpg Screenshot_96.jpg
(101.1 Kb, 4 просмотров)
на просторах интернета я нашел батник который может посылать нажатия клавиш на любое открытое окно в виндусе...кароч...с цифрами всё исправно работает...но как дело дошло до букв...толи с кодировкой что толи я криворукий...я тыкал тыкал и в итоге понял как писать русские маленькие буквы... нужно писать большие английские...остальные попытки ничего не дали...кто может помочь?
Код: Выделить весь код
@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

Отправлено: 00:55, 09-07-2018

 

Аватара для yurfed

Ветеран


Сообщения: 20046
Благодарности: 3123

Профиль | Отправить PM | Цитировать


Цитата Darkar25:
надеюсь что кто-нибудь сможет помочь... »
Попробуем.
Первой строкой пропишите
chcp 1251

-------
Хочу ли я - Могу ли я - Говно ли я - Магнолия


Отправлено: 01:15, 09-07-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 116
Благодарности: 1

Профиль | Отправить PM | Цитировать


Цитата yurfed:
Попробуем.
Первой строкой пропишите
chcp 1251 »
первой строкой нельзя...батник работать перестанет...написал там где можно...но буквы всё так-же перемешаны...

Последний раз редактировалось Darkar25, 09-07-2018 в 01:28.


Отправлено: 01:22, 09-07-2018 | #3


Аватара для yurfed

Ветеран


Сообщения: 20046
Благодарности: 3123

Профиль | Отправить PM | Цитировать


Цитата Darkar25:
первой строкой нельзя...батник работать перестанет »
С какого перепугу перестанет?
Можете проверить или посмотреть сюда

Цитата Darkar25:
написал там где можно... »
А где можно?

-------
Хочу ли я - Могу ли я - Говно ли я - Магнолия


Отправлено: 01:37, 09-07-2018 | #4


Пользователь


Сообщения: 116
Благодарности: 1

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: jpg Screenshot_97.jpg
(83.9 Kb, 4 просмотров)

Цитата yurfed:
Цитата Darkar25:
написал там где можно... »
А где можно? »
тут

Отправлено: 01:40, 09-07-2018 | #5


Пользователь


Сообщения: 116
Благодарности: 1

Профиль | Отправить PM | Цитировать


Цитата yurfed:
Цитата Darkar25:
первой строкой нельзя...батник работать перестанет »
С какого перепугу перестанет? »
я хз...я пробовал уже в начала файла чтото писать...батник подумал что это тоже кусок скрипта и сказал что какаято ошибка компиляции...

Отправлено: 01:40, 09-07-2018 | #6


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Darkar25:
.кароч...с цифрами всё исправно работает...но как дело дошло до букв...толи с кодировкой что толи я криворукий...я тыкал тыкал и в итоге понял как писать русские маленькие буквы... нужно писать большие английские...остальные попытки ничего не дали...кто может помочь? »
Забудьте про .SendKeys() как про страшный сон и плавно переходите к изучению AutoIt/AutoHotKey.

P.S. С консольными же приложениями так (послать нажатие клавиши) вообще не работают. Там перехватывают стандартные потоки и читают из них или пишут в них.

Отправлено: 02:00, 09-07-2018 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - CMD\BAT\SHELL неправильная кодировка

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Flash - восстановление файлов. неправильная кодировка Grizz Накопители (SSD, HDD, USB Flash) 13 08-04-2015 21:00
2012 R2 - Неправильная кодировка в консоли! olegkoso001 Windows Server 2012/2012 R2 2 31-12-2014 00:07
Разное - [решено] Неправильная кодировка в консоли camo Наборы обновлений для Windows XP/2003/Windows 7 35 21-11-2013 23:17
Dell x51v неправильная кодировка в Notes в contacts clop1000 Мобильные ОС, смартфоны и планшеты 2 07-10-2009 14:47
Скрипт отправки сообщений (неправильная кодировка) Denis Shutka Вебмастеру 2 10-04-2005 09:12




 
Переход