Вниз
Скачать: CL | DM;

Как программно заменить выделенный текст в окне другого приложени   Найти похожие ветки 

 
vann   (2007-04-20 10:27) [0]

Мне нужно из своей программы менять выделенный текст в окнах ввода/редакторах других приложений. Я получаю хендл нужного окна, но каким образом мне сначала прочесть выделенный текст, а потом заменить его? Я пробовал делать это через отправку сообщений WM_COPY и WM_PASTE, но этот метод работает не со всеми приложениями и часто глючит даже с блокнотом винды. Есть еще какой-нибудь способ, кроме WM_COPY и WM_PASTE?


 
clickmaker ©   (2007-04-20 11:05) [1]


> часто глючит даже с блокнотом винды

что значит - глючит?


 
vann   (2007-04-20 12:12) [2]

срабатывает через раз-два.


 
phanatos ©   (2007-05-21 18:57) [3]

Задержку надо ставить, задержку (sleep), чтобы приложение успевало обработать твои сообщения. А не со всеми приложениями работает, потому что не тому окну сообщения шлешь. Проще и надежнее было бы посылать события функцией keybd_event. Можно также поставить хук WH_JOURNALPLAYBACK и проигрывать заранее записанную комбинацию клавиш =).


 
Leonid Troyanovsky ©   (2007-05-21 19:27) [4]


> vann   (20.04.07 10:27)  

> Мне нужно из своей программы менять выделенный текст в окнах
> ввода/редакторах других приложений.

То, что представляется нам как, например, EDIT
в других приложениях может им и не быть.
Скажем, в NT4 окно калькулятора, куда вводятся
значения был STATIC.

Т.е., для столь общего случая - простых решений нет.

--
Regards, LVT.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
3-1184590706
Zabludshiy
2007-07-16 16:58
2007.12.02
FireBird BLOB


15-1193772970
korneley
2007-10-30 22:36
2007.12.02
Фича/глюк/(не)задокументированная возможность ?


2-1194595298
lobach
2007-11-09 11:01
2007.12.02
Обработка ошибки


3-1184772562
olevacho_
2007-07-18 19:29
2007.12.02
защта базы.


9-1154378158
Nobody_1988
2006-08-01 00:35
2007.12.02
3D Engine




   Наверх