Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.23;
Скачать: CL | DM;

Вниз

проблема с ShellExecuteEx   Найти похожие ветки 

 
alshtam ©   (2007-08-29 09:03) [0]

проблема в следующем я открываю Chm файл и хотелось бы получить хендл окна в котором открылось приложение но в переменной hProcess класса SHELLEXECUTEINFO явно лежит не хендл
вот мой текст

var
 SHExecInfo:SHELLEXECUTEINFO;
 styl:longint;
begin
 SHExecInfo:=SHELLEXECUTEINFO(GetMemory(sizeof(SHELLEXECUTEINFO))^);
 SHExecInfo.cbSize := sizeof(SHELLEXECUTEINFO);
 SHExecInfo.fMask := SEE_MASK_NOCLOSEPROCESS;
 SHExecInfo.nShow := SW_SHOWNORMAL;
 SHExecInfo.lpFile := "test.chm";
 ShellExecuteEx(@SHExecInfo);
end;
подскажите пожалуста что неправильно я сделал?


 
MBo ©   (2007-08-29 09:07) [1]

>явно лежит не хендл
хендл, только не окна, а процесса


 
alshtam ©   (2007-08-29 09:10) [2]

хендл просесса..
как по нему пожно узнать хендл окна, должно быть как моможно?


 
@!!ex ©   (2007-08-29 09:18) [3]

> [2] alshtam ©   (29.08.07 09:10)

только стоит учитывать, что у одного процесса может быть вагон окон...


 
alshtam ©   (2007-08-29 09:21) [4]

да конечно, но у процесса соцданого таким путем только одно окно!


 
@!!ex ©   (2007-08-29 09:31) [5]

> [4] alshtam ©   (29.08.07 09:21)

Список окон, созданных процессом, получается с помощью функции EnumWindows.
Для каждого из этих окон с помощью функции GetWindowThreadProcessID определяется процесс.
Выбираешь только те окна, которые принадлежат данному процессу.


 
MBo ©   (2007-08-29 09:31) [6]

Придется перебрать окна (например, EnumWindows), и проверить, какому потоку/процессу они принадлежат


 
alshtam ©   (2007-08-29 09:33) [7]

большое спасибо, щас попробую!



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

Текущий архив: 2007.09.23;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.039 c
15-1188201729
Domkrat
2007-08-27 12:02
2007.09.23
TDateTimeEdit


15-1187936522
leonidus
2007-08-24 10:22
2007.09.23
Глюки при отображении формы в D6


1-1184053838
Кирилл_А
2007-07-10 11:50
2007.09.23
Массив строк и Dll


2-1188311501
Flight_
2007-08-28 18:31
2007.09.23
всплывающая подсказка


15-1188071825
Turbouser
2007-08-25 23:57
2007.09.23
DM клиент





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