Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2018.05.27;
Скачать: [xml.tar.bz2];

Вниз

Как отправить в приложение символ в Unicode?   Найти похожие ветки 

 
grigor   (2010-10-25 15:31) [0]

Допустим надо отправлять в приложение букву Ä или Ö.


 
Leonid Troyanovsky ©   (2010-10-25 16:19) [1]


> grigor   (25.10.10 15:31)  

> Допустим надо отправлять в приложение букву Ä

PostMessageW(wnd, WM_CHAR, WPARAM($00C4), 0)

--
Regards, LVT.


 
grigor   (2010-10-27 16:39) [2]

Спасибо!


 
grigor   (2010-10-27 16:45) [3]

А как определить хендл активного текстового поля в чужом приложении чтобы ему это отослать? А то GetActiveWindow принимает хендл окна, а оно не регистрирует сообщение WM_CHAR.


 
grigor   (2010-10-27 16:51) [4]

Все, спасибо, сам разобрался


 
NikB   (2010-11-08 16:03) [5]


> Допустим надо отправлять в приложение букву Ä

Пожалуйста, а от куда (и как) взялось $00C4 (196, decimal)?


 
clickmaker ©   (2010-11-08 16:26) [6]

> от куда (и как) взялось $00C4 (196, decimal)?

charmap.exe


 
Anatoly Podgoretsky ©   (2010-11-08 16:47) [7]

> clickmaker  (08.11.2010 16:26:06)  [6]

Это ANSI код


 
NikB   (2010-11-10 15:29) [8]

ANSI - это 1252?
> http://ascii-table.com/ansi-codes.php


А 1251 как сделать?
Я писал маленкую прогу, которая работает с Yahoo msg и Skype (находит активное окно и т.д.), но не сумел послать 1251.
В основном:
     if xWParam>=$20 then begin
       SendMessage( aHandle, WM_CHAR,    xWParam, 0); //1);
     end else begin
       SendMessage( aHandle, WM_KEYDOWN, xWParam, 0); //1);
       SendMessage( aHandle, WM_CHAR,    xWParam, 0); //1);
       SendMessage( aHandle, WM_KeyUp,   xWParam, 0); //$C0000001);
     end;


 
clickmaker ©   (2010-11-10 15:54) [9]

> но не сумел послать 1251

1251 нельзя послать, ибо это зависит от набора символов, который использует тот, кому посылаешь
можно послать код, а как его получатель отобразит - его дело


 
Anatoly Podgoretsky ©   (2010-11-10 15:54) [10]

АNSI это 256 кодов, которые можно как угодно интерпритировать, тебе надо 1251 ну так и интерпритируй (считай) как 1251


 
NikB   (2010-11-10 16:01) [11]

Да, проблем.
Вопрос был о Unicode, а Unicode не 255 кодов.


 
Anatoly Podgoretsky ©   (2010-11-10 16:07) [12]

Зачем тогда спрашиваешь

> А 1251 как сделать?

Для Юникода надо использовать Юникод версию - SendMessageW
Только проверь, что она объявлена в windows.pas


 
clickmaker ©   (2010-11-10 16:08) [13]

> Вопрос был о Unicode, а Unicode не 255 кодов.

а в уникоде нет понятия 1251 или 1252. Это отдельный набор символов
см.  SendInput()


 
Anatoly Podgoretsky ©   (2010-11-10 16:09) [14]


> Вопрос был о Unicode, а Unicode не 255 кодов.

К тому же вопрос был не твой, ты в него влез, как будто места мало.


 
NikB   (2010-11-10 16:36) [15]

Извините, пожалуйста!



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2018.05.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.001 c
4-1288006306
grigor
2010-10-25 15:31
2018.05.27
Как отправить в приложение символ в Unicode?


15-1472679002
Юрий
2016-09-01 00:30
2018.05.27
С днем рождения ! 1 сентября 2016 четверг


2-1464004499
Михалыч
2016-05-23 14:54
2018.05.27
Поиск на сайте





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский