![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как в DLL узнать Handle вызывающего приложения? [D6, WinXP]
Чайник © (2005-02-28 19:17:00)Собственно сабж
GuAV (2005-02-28 22:23:00) [1]Хендл модуля приложения это адрес по которому образ модуля приложения спроецирован в ардесное пространство приложения.
Application.Handle это хендл окнакоторое (обычно) является Onwerом всех форм и к которому относится Taskbar-кнопка.
Чайник (2005-02-28 22:07:00) [2]>GuAV © (28.02.05 21:19) [8]
>Так и нужно было говорить хендл окна приложения а не хендл приложения.
>Application.Handle можно найти через EnumThreadWindows проверяя имя класса и стили.
Я что-то не понял, что есть хендл приложения а что есть хендл окнаприложения, и как я сказал?
GuAV (2005-02-28 21:19:00) [3]Чайник © (28.02.05 21:02) [7]
Что-то возвращает, но не Application.Handle
Так и нужно было говорить хендл окнаприложения а не хендл приложения.
Application.Handle можно найти через EnumThreadWindows проверяя имя класса и стили.
Чайник (2005-02-28 21:02:00) [4]>jack128 © (28.02.05 19:53) [4]
>GetModuleHandle(nil)
Что-то возвращает, но не Application.Handle
>Kerk © (28.02.05 19:53) [5]
>GetCommandLine + [2]
Возвращает 0
Чайник (2005-02-28 19:54:00) [5]> GetModuleHandle('путь к экзе')
А как внутри DLL получить 'путь к экзе' вызывающегоприложения?
jack128 (2005-02-28 19:53:00) [6]GetModuleHandle(nil)
Kerk (2005-02-28 19:53:00) [7]GetCommandLine + [2]
Чайник (2005-02-28 19:52:00) [8]> передавать его в качестве параметра
Это очевидно. А если надо не передавать, а получить ВНУТРИDLL?
clickmaker (2005-02-28 19:49:00) [9]GetModuleHandle('путь к экзе')
TUser (2005-02-28 19:45:00) [10]передавать его в качестве параметра