[Вопрос] Раскладка
quizzzy
Дата: Понедельник, 31.07.2017, 22:48 | Сообщение # 1
Боец
Сообщений: 161
Статус: Offline
Привет, только начинаю программировать на AHK и столкнулся с такой проблемой, то что у меня при английской раскладке пишутся вопросики. Помогите)
[CM]DonHomka
Дата: Понедельник, 31.07.2017, 23:31 | Сообщение # 2
Любитель
Сообщений: 39
Статус: Offline
Кодировку выбери. ANSI
CZAR
Дата: Понедельник, 31.07.2017, 23:41 | Сообщение # 3
Czar Of Scripts
Сообщений: 1373
Статус: Offline
[CM]DonHomka , И то не поможет quizzzy , Лучше юзать SendChat, если нужно написать сообщение не изменяя его Если нужно написать в строку чата то можно заюзать вот эту функу (в спойлере функа copy которая используется в GetChat):Код
getchat(text) { if (!isInChat()) { lastcopy:=Clipboard sleep, 100 copy(text " ") Send, {F6}{vkA2 down} Send, {vk56 down}{vk56 up} Send, {vkA2 up} sleep, 100 copy(lastcopy) } }
Код
Copy(Text, LocaleID=0x419) { CF_TEXT:=1, CF_LOCALE:=16, GMEM_MOVEABLE:=2 TextLen :=StrLen(Text) HmemText :=DllCall("GlobalAlloc", "UInt", GMEM_MOVEABLE, "UInt", TextLen+1) ; Запрос перемещаемой HmemLocale:=DllCall("GlobalAlloc", "UInt", GMEM_MOVEABLE, "UInt", 4) ; памяти, возвращаются хэндлы. If(!HmemText || !HmemLocale) Return PtrText :=DllCall("GlobalLock", "UInt", HmemText) ; Фиксация памяти, хэндлы конвертируются PtrLocale :=DllCall("GlobalLock", "UInt", HmemLocale) ; в указатели (адреса). DllCall("msvcrt\memcpy", "UInt", PtrText, "Str", Text, "UInt", TextLen+1, "Cdecl") ; Копирование текста. NumPut(LocaleID, PtrLocale+0) ; Запись идентификатора локали. DllCall("GlobalUnlock", "UInt", HmemText) ; Расфиксация памяти. DllCall("GlobalUnlock", "UInt", HmemLocale) If not DllCall("OpenClipboard", "UInt", 0) ; Открытие буфера обмена. { DllCall("GlobalFree", "UInt", HmemText) ; Освобождение памяти, DllCall("GlobalFree", "UInt", HmemLocale) ; если открыть не удалось. Return } DllCall("EmptyClipboard") ; Очистка. DllCall("SetClipboardData", "UInt", CF_TEXT, "UInt", HmemText) ; Помещение данных. DllCall("SetClipboardData", "UInt", CF_LOCALE, "UInt", HmemLocale) DllCall("CloseClipboard") ; Закрытие. }
Я в ВК Ушел в веб. • Ничего не покупаю. • Способы не проверяю. У меня теперь новый домен, если ссылка не работает - напишите. Гарант Cheat-Master: *тема* AHK [S-RP] House Finder / House Teleporter [SAMP] Online Counter [S-RP] [For Event] Show Star [S-RP] AntiCasino [S-RP] [BOT] Auto Fisher + Auto Find Worm + Auto Cook [S-RP] [BOT] /dance Winner | Делаем розыгрыши среди участников темы. SAMP-UDF [AHK Урок] Выбор в диалогах мышкой и enter`ом [SAMP] Быстрый ответ на СМС [ERP] Помощник для адвоката [DRP] FakeTime Достижения: - 26.02.2017 - 03.01.2018 - 26.05.2018 - 22.09.2018 - 04.04.2019
Сообщение отредактировал Phoenixxx_Czar - Понедельник, 31.07.2017, 23:42
quizzzy
Дата: Вторник, 01.08.2017, 07:20 | Сообщение # 4
Боец
Сообщений: 161
Статус: Offline
Цитата Phoenixxx_Czar (
)
Лучше юзать SendChat, если нужно написать сообщение не изменяя его Если нужно написать в строку чата то можно заюзать вот эту функу (в спойлере функа copy которая используется в GetChat):
А можно поподробнее
Musiks
Дата: Вторник, 01.08.2017, 11:42 | Сообщение # 5
Боец
Сообщений: 176
Статус: Offline
Вод код переключения раскладки на русскуюКод
SendMessage, 0x50,, 0x4190419,, A ; русский
Вот пример использования:Код
F1:: SendMessage, 0x50,, 0x4190419,, A ; русский sleep 200 Sendinput,{F6}Дороу{enter}
quizzzy
Дата: Суббота, 05.08.2017, 11:47 | Сообщение # 7
Боец
Сообщений: 161
Статус: Offline
Большое спасибо всем!