Вниз
Скачать: CL | DM;

CreateProcess проблема в получении handle   Найти похожие ветки 

← →
Сергей_И   (2004-04-19 10:49) [0]

var
 StartInfo: TStartupInfo;
 ProcInfo: TProcessInformation;
выполняю
  CreateProcessA(nil,pChar(Edit1.text),nil,nil,false,CREATE_DEFAULT_ERROR_MODE or NORMAL_PRIORITY_CLASS,nil,nil,StartInfo,ProcInfo);

в pChar(Edit1.text) - запускаемое приложение
В ProcInfo по идее должны записаться хендлы создаваемого процесса и глобальный идентификатор процесса (ID), и тоже для его первого потока. Так вот ID создаваемого процесса там есть, а вместо хендла процеса другой хендл (панели задач внизу экрана) - почему? - приходится хендл нужного процесса искать с пом. FindWindow


← →
nikkie ©   (2004-04-19 11:00) [1]

>почему?
потому что путаешь хендлы окон и хендлы процессов.


← →
Digitman ©   (2004-04-19 11:02) [2]


> приходится хендл нужного процесса искать с пом. FindWindow


хэндл процесса и хэндл окна - две разные разницы
FindWindow ищет хэндл окна, а не хэндл процесса

typedef struct _PROCESS_INFORMATION { // pi  
   HANDLE hProcess; //а здесь - именно хэндл процесса !! только что созданного !! а не хэндл окна !!
   HANDLE hThread;
   DWORD dwProcessId;
   DWORD dwThreadId;
} PROCESS_INFORMATION;


← →
Сергей_И   (2004-04-19 11:09) [3]

есть ли тогда какой нибудь способ узнать handle окна (по хэндлу процесса) не используя FindWindow?


← →
Anatoly Podgoretsky ©   (2004-04-19 11:12) [4]

Нет поскольку у процесса может быть множество окон, начиная с 0


← →
Digitman ©   (2004-04-19 11:13) [5]

есть.
EnumWindows, например

оно тебе для каких целей понадобилось, окно-то ?


← →
Сергей_И   (2004-04-19 11:25) [6]

Да я тут спрашивал уже - нужно программно открывать сайты (несколько) и заполнять интернет формы. Посоветовали
http://www.delphikingdom.ru/mastering/tweb.htm сижу читаю


← →
nikkie ©   (2004-04-19 11:36) [7]

ну и здорово. про CreateProcess можешь забыть.
собственно не факт, что и TWebBrowser нужен...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.044 c
3-1084353383
Санёк
2004-05-12 13:16
2004.05.30
Как сделать чтобы LookupComboBox просто подставлял значения


3-1083913177
Violina
2004-05-07 10:59
2004.05.30
BDE 5: параметр BLOB SIZE, dead BLOBs <> live BLOBs


1-1084688458
Sergius_I
2004-05-16 10:20
2004.05.30
Процедуры


6-1080573425
kortun
2004-03-29 19:17
2004.05.30
TcpServer принципы работы?


6-1081340404
NorthMan
2004-04-07 16:20
2004.05.30
Такой вопрос. Почему иногда функция Socket.ReceiveText возвращает




   Наверх