IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Программирование (http://www.imho.ws/forumdisplay.php?f=40)
-   -   Мини-транслитератор - как бы такое сделать? (http://www.imho.ws/showthread.php?t=10582)

Aeon 06.09.2002 10:39

Мини-транслитератор - как бы такое сделать?
 
Всем привет.

Недавно лазил по инету ища нормальный транслитератор. Нашёл несколько, но все какие то громоздкие. Вспомнил программку по имени PWshow которую видел однажды - когда она грузится, можно нажатием F10 показывать пароли спрятанные звездочками.

Задумался.

Появилась идея - маленкая программка грузится в память, сидит себе в Systray.... в настройках выбираешь кодировку в которую/из какой перекодировать (транслит, win-1251, koi8-r, ISO, cp-866). Нажатием, например, F8, все что выбрано в активном окне перекодируется в выбранную кодировку и вставляется назад в то же окно (если окно является editable - если нет, то может копирует транслитерированный текст на clipboard или просто ничего не делает...) Нажимаем F8 ещё раз - делает undo.

Проблема у меня одна - системные программы я писать не умею (PHP, Perl, немного Python, это мои пределы [пока]). Так что вопрос такой - насколько такой проект сложен, и не найдется ли умельца кто бы хотел такое написать? Я со своей стороны могу сделать интерфейс программки покрасивше и страничку для нее - работаю wеб-дизайнером как-никак.

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

С любопытством жду ответов и идей.

Aeon 08.09.2002 22:38

Мда..... всё с вами ясно. Ну хоть сказать насколько по вашему сложен проект, можно?

alexey_ma 09.09.2002 09:58

Не очень сложно. Можно сделать примерно следующее: Находишь активное окно в системе(функция GetForegroundWindow()) определяешь поток этого окна (GetWindowThreadProcessId) коннектишся к потоку (AttachThreadInput) получаешь окно которое в фокусе(GetFocus) из него техт (GetWindowText) далаешь с этим текстом все что тебе нужно. Сконвертированный текст возвращаешь в окно либо через ClipBoard либо пишешь непосредственно в пямять процесса (это немного сложнее).

helldomain 13.09.2002 07:55

Pisat neposredstwenno w pamyat processa ne stoit...

Nitrogen 16.09.2002 04:38

да в какую память процесса?.. хэндл окна есть. хэндл
эдита или что там у вас будет есть?.. потом сендмессаджем устанавливаешь необходимый текст, или юзаешь setdlgitemtexta


Часовой пояс GMT +4, время: 00:43.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.