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

Вниз

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

 
4IZH   (2006-07-07 21:56) [0]

привет народ
скажите как в DLL узнать хендел формы приложения, в адресное пространство которого эта DLL загружена


 
PSPF2003 ©   (2006-07-07 22:03) [1]

Ты имеешь в веду ту форму из которой была вызвана DLL?


 
parovoZZ ©   (2006-07-07 22:09) [2]

Передавай в функции. Например, при инициализации dll. А если exe не твоё, то извини.....


 
redlord   (2006-07-07 22:18) [3]

нет .
эта DLL подгружается к чужой проге путем установки хука ,
и нужно получить указатель на форму той проги на которую установлен хук


 
Virgo_Style ©   (2006-07-07 22:24) [4]

а у той программы точно есть формы?


 
4IZH   (2006-07-07 22:31) [5]

в моем случае да есть


 
begin...end ©   (2006-07-08 08:21) [6]

> 4IZH   (07.07.06 21:56) [0]

А что будем делать, если DLL окажется загруженной в адресные пространства НЕСКОЛЬКИХ приложений?


 
Ketmar ©   (2006-07-08 13:16) [7]

а если там не формы, а просто окна? да ещё и во множественном числе? какое именно надо?


 
redlord   (2006-07-15 14:08) [8]

to begin  end

данная DLL будет загружена тока в нужною мне прогу так как при установке хука указан ее ID

to ketmar

нужен хендел основной формы приложения. на котором расположены
все контролы управления


 
begin...end ©   (2006-07-15 14:42) [9]

> redlord   (15.07.06 14:08) [8]

> данная DLL будет загружена тока в нужною мне прогу так как
> при установке хука указан ее ID

ОК, только при установке хука указывается ID не проги, а потока. А раз так, то перечислить родительские окошки, связанные с этим потоком, можно с помощью EnumThreadWindows (которую можно вызвать и из DLL). Среди них и можно будет найти нужное окно. Правда, почему приложение вместо того, чтобы сообщить хэндл окна библиотеке (см. [2]), заставляет её заниматься этим поиском, не совсем ясно.


 
DrPass ©   (2006-07-15 15:30) [10]


> Правда, почему приложение вместо того, чтобы сообщить хэндл
> окна библиотеке (см. [2]), заставляет её заниматься этим
> поиском, не совсем ясно.

Подсказываю - приложение может быть написано посторонним разработчиком, который не предполагал того, что задумал товарищ 4IZH


 
Ketmar ©   (2006-07-15 16:38) [11]

>redlord   (15.07.06 14:08) [8]
ФОРМЫ есть в Delphi и VB. а если там чистый WinAPI, например? там не формы, а окна. EnumWindows/EnumCHildWindows. и угадывай.


 
4IZH   (2006-07-16 22:00) [12]

to begin end

передать из проги установившей хук не выдет, так как после подгрузки в чужое А .П.   все переменные в DLL обнуляются



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

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

Наверх





Память: 0.47 MB
Время: 0.009 c
4-1144268716
polyarnik
2006-04-06 00:25
2006.08.06
Открыть Открытый COM порт


15-1152250195
Колдун
2006-07-07 09:29
2006.08.06
Языческий праздник


5-1137112317
КодеКорешь
2006-01-13 03:31
2006.08.06
Как програмно заставить "выпасть список" в ComboBox


15-1152545626
Andy BitOff
2006-07-10 19:33
2006.08.06
У кого есть опыт работы с компон. Developer Express


2-1153304775
Acidlex
2006-07-19 14:26
2006.08.06
ExitWindowsEx





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