Форум: "Начинающим";
Текущий архив: 2011.03.20;
Скачать: [xml.tar.bz2];
ВнизПередать текстовые данные в поле сторонней программы Найти похожие ветки
← →
Den (2010-12-25 17:32) [0]Привт. У нас на работе используется Microsoft Communicator (картинка вот -> http://savepic.org/1004075.jpg). Есть также некая программа-справочник с сотрудниками (ФИО, тел, E-Mail? кабинет и т.д.). В Communicator можно выполнить поиск человека введя в соответствующее поле фамилию или E-Mail. Задача из программы-справочника скопировать например двойным кликом по строке с сотрудником его ФИО или мыло, не важно, в в строку поиска Communicator.
Сначала видимо нужно скопировать в буфер значение определенной ячейки (ФИО например), потом вставить это значение в Communicator (предварительно запустив его если он не запущен). Вот тут и возникает вопрос как произвести вставку?
← →
Rouse_ © (2010-12-25 21:00) [1]
> Вот тут и возникает вопрос как произвести вставку?
WM_SETTEXT
← →
Den (2010-12-25 21:23) [2]
> Rouse_ © (25.12.10 21:00) [1]
А как определить какой именно программе предать содержимое? Ведь может еще что-то быть открыто у пользователя
← →
Rouse_ © (2010-12-25 21:26) [3]Ну тут уже сам думай как ты будешь детектировать нужное именно тебе приложение...
← →
Den (2010-12-25 21:44) [4]Я нашел такой пример:
h:= FindWindow(nil, "Оffice Communicator"); // Ищем окно
SendMessage(h,WM_SETTEXT,0,LPARAM(PChar(Edit1.Text))); // сообщение
Но в примере написано что это приведет к изменению заголовка найденного окна на содержимое эдита. А мне нужно вставить содержимое в эдит найденного овно а не менять его заголовок. Попробовать негде, на этом компе нет Дельфи
← →
Rouse_ © (2010-12-25 21:55) [5]Так ты найдешь просто окно программы, а не нужный тебе EDIT - почитай MSDN, там написано о организации окон...
← →
tippa (2010-12-25 22:08) [6]Den, тебе нужна програмка SPY++, через функции FindWindow и FindWindowEx ищешь хэндл нужного эдита и посылаешь в него текст через WM_SETTEXT.
← →
Den (2010-12-25 22:34) [7]
> tippa (25.12.10 22:08) [6]
Не очень понял для чего мне SPY++, мне нужно все это реализовать в свой программе. Пока не могу разобраться как найти хендл контрола (эдита) нужного....
← →
Германн © (2010-12-26 03:32) [8]
> Не очень понял для чего мне SPY++
> Пока не могу разобраться как найти хендл контрола (эдита)
> нужного....
>
2+2 = 4
В начинающие! :)
← →
sniknik © (2010-12-26 15:51) [9]> Не очень понял для чего мне SPY++
это инструмент помогающий разобраться в структуре чужого приложения. грубо, в том, что на чем лежит.
> мне нужно все это реализовать в свой программе.
а посылать текст будешь на "деревню дедушке"?
> Пока не могу разобраться как найти хендл контрола (эдита) нужного....
сказали уже как...
> через функции FindWindow и FindWindowEx ищешь хэндл нужного эдита ...
← →
Curse © (2010-12-27 07:47) [10]
> Den, тебе нужна програмка SPY++, через функции FindWindow
> и FindWindowEx ищешь хэндл нужного эдита и посылаешь в него
> текст через WM_SETTEXT.
Сейчас этот хэндл один, а после следующего запуска - другой. И Спай++ не поможет.
← →
Palladin © (2010-12-27 08:09) [11]и дейстивительно... на кой его придумали...
← →
sniknik © (2010-12-27 09:22) [12]точно! вслепую "тыкаться" гораздо интереснее... и в духе форумов, а то еще спрашивать не о чем будет.
← →
Curse © (2010-12-27 09:33) [13]Сорри, глупость сказал. Пойду читать Руссиновича, что о дескрипторах пишет.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2011.03.20;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c