1 (изменено: baplo, 2018-06-14 01:55:51)

Тема: AHK: WinHttp API VK не отправляются русские буквы

Здравствуйте!
Есть такой код:


+F1::
WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
WebRequest.Open("GET", "https://api.vk.com/method/messages.send?user_id=0000" "&v=5.37" V ("&message=Логан проснись") mess "&access_token=00000000000" token)
WebRequest.Send()
Return

Данный код отправляет сообщение пользователю вк.
Проблема в том, что русские буквы передаются в виде кракозябр:  ЛогаР
В строчке: ("&message=Логан проснись") текст отправки сообщения пользователю.
Как исправить косяк?

Люблю когда мне понижают репутацию (мне правда все равно)

2

Re: AHK: WinHttp API VK не отправляются русские буквы

stealzy пишет:

UTF-8 → Win-1251

Про UTF-8 Я читал.
Но я не совсем понял вашего ответа.
Как мне использовать ваши данные в своем коде?
Буду рад, если поможете.

Люблю когда мне понижают репутацию (мне правда все равно)

3

Re: AHK: WinHttp API VK не отправляются русские буквы

Перевожу:
Используются разные кодировки. Вы посылаете текст в кодировке UTF-8, а они отображаются в Win-1251, естественно неверно. Посылайте текст с исходной кодировкой Win-1251 и не будет у вас таких проблем.
Для подробностей "как" используйте поиск, вот вам для начала:
https://autohotkey.com/board/topic/8113 … ig-endian/
https://rsrl.ru/forum/index.php?showtop … amp;st=250
http://forum.rodina-rp.com/index.php?th … key.21685/

4

Re: AHK: WinHttp API VK не отправляются русские буквы

Nox_The_Great пишет:

Перевожу:
Используются разные кодировки. Вы посылаете текст в кодировке UTF-8, а они отображаются в Win-1251, естественно неверно. Посылайте текст с исходной кодировкой Win-1251 и не будет у вас таких проблем.
Для подробностей "как" используйте поиск, вот вам для начала:
https://autohotkey.com/board/topic/8113 … ig-endian/
https://rsrl.ru/forum/index.php?showtop … amp;st=250
http://forum.rodina-rp.com/index.php?th … key.21685/

Ваш пост подсказал мне на мысль, что дело не в самой отправке сообщений внутри WinHttp, и даже не в самом AHK.
А в самом документе, в какой он кодировке.
ИЗменив кодировку внутри программы Notepad++ на кодировку UCS-2 - решило мою проблему.
Спасибо.

Люблю когда мне понижают репутацию (мне правда все равно)