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

Вниз

а есть ли функция обратная getwindowthreadprocessid   Найти похожие ветки 

 
redlord   (2006-08-22 12:02) [0]

getwindowthreadprocessid(hnd,pid) получаем pid по хенделу

а есть ли функция обратная етой которая позволяет получить хендел зная pid ?


 
clickmaker ©   (2006-08-22 12:06) [1]


> получить хендел зная pid

хендел чего?


 
redlord   (2006-08-22 12:14) [2]

главного окна проги зная pid процесса в котором она работает


 
DiamondShark ©   (2006-08-22 12:18) [3]


> главного окна проги

У проги нет главного окна.

А получить все окна верхнего уровня можно функцией EnumThreadWindows.


 
redlord   (2006-08-22 12:27) [4]

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


 
Сергей М. ©   (2006-08-22 12:32) [5]


> redlord   (22.08.06 12:27) [4]


И с чего ты решил, что это окно главное ?
Это просто некое окно.. А главное оно или неглавное - это ни тебе ни мне не ведомо)

Так что см. [3]


 
redlord   (2006-08-22 17:10) [6]

тобиш  что я назвал главным окном на самом деле называется окном верхнего уровня ?


 
Сергей М. ©   (2006-08-22 17:13) [7]

Ну что-то типа того.
Правда нет никаких ограничений на создание приложением в ходе его работы множества окон верхнего уровня. Вопрос тебе на засыпку: какое из них можно считать главным ?


 
redlord   (2006-08-22 18:20) [8]

to Сергей

чтото я не понял почему в приведенном примере в функции возврата
hnd не равен  param ?
//-----------------------------------------------------------------
function EnumThreadWndProc(HND: hwnd;PARAM :lParam):boolean;
begin
showmessage("hwnd: "+ inttostr(hnd)+" Lparam: "+inttostr(param));
result:=true;
end;
//-----------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var thrdid :word;
n:integer;
begin
ThrdID:= GetWindowThreadProcessId(form1.Handle,nil);
EnumThreadWindows(thrdid,@EnumThreadWndProc,form1.Handle);
end;


 
DiamondShark ©   (2006-08-22 18:27) [9]

во-первых, callback-функция должна иметь модель вызова stdcall (!)

во-вторых, а с чего это там что-то чему-то должно быть равно?


 
redlord   (2006-08-22 19:50) [10]

stdcall помог про него то я забыл

а как получить threadid главной нити приложения не перелопачивая список
запущенных процессов.
веть ето приложение запускает моя прога


 
begin...end ©   (2006-08-22 20:03) [11]

> redlord   (22.08.06 19:50) [10]

> а как получить threadid главной нити приложения не перелопачивая
> список запущенных процессов.
> веть ето приложение запускает моя прога

CreateProcess + PROCESS_INFORMATION.dwThreadId


 
Leonid Troyanovsky ©   (2006-08-22 20:09) [12]


> redlord   (22.08.06 19:50) [10]

> а как получить threadid главной нити приложения не перелопачивая
> список


Таких торжественных имен как "главная нить" тоже нет.
На худой конец это "primary thread".
См. также TProcessInformation.dwThreadId

--
Regards, LVT.



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

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

Наверх




Память: 0.47 MB
Время: 0.05 c
8-1140628607
Sour Smile
2006-02-22 20:16
2006.09.10
Как правильно нарисовать дым?


2-1155784128
GEM
2006-08-17 07:08
2006.09.10
file is in use


1-1153738251
Zilog_
2006-07-24 14:50
2006.09.10
Как описать CallBack функцию с С++ на Delphi


2-1155812347
ArtemESC
2006-08-17 14:59
2006.09.10
Обязателен ли SysUtils в


4-1147245127
Elen
2006-05-10 11:12
2006.09.10
Перехват поступления данных из COM порта





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