Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
2-1293173351
chaika_sv
2010-12-24 09:49
2011.03.20
"Самоагрегация"


15-1291751037
Сергей М.
2010-12-07 22:43
2011.03.20
А как нужно умудриться


15-1291640916
Дмитрий С
2010-12-06 16:08
2011.03.20
Подскажите почтовый хостинг с возможностью алиасов с масками.


4-1246357819
istok20
2009-06-30 14:30
2011.03.20
запуск процесса из-под сервиса...


15-1291757399
Юрий
2010-12-08 00:29
2011.03.20
С днем рождения ! 8 декабря 2010 среда





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский