Threadıd Den Handle No Almak?
-
Arkadaslar bir process in Threadid sinden handle no nasıl alırım. Bunu yapmamın amacı bir program dll yi thread olarak başka bir programa injliyor. O dll ye postmessage ile wm_show çektirmem ve title ını öğrenmem lazım. Yardımlarınız için teşekkürler.
-
delphi 7 de vardı sanırım handle almak için bi program
-
Delphi programcısı deilim, ama olayın mantığını söyliym.
muhtemelen GetWindowThreadProcessId ile thread noyu aldın;simdi istedigin sey process ID ise OpenProcess apisiyle , aldığın pID deki processi acmalisin.
hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0, pID)
* Delphiye uyarlayabilrsin, hProcess in turu long olmalidir.Donen deger process handle olacaktir.
-
valla hocam process explorer ile zaten threadid leri aldırıyorum pid no da aldırıyorum ama dediğim şey bir processin içine enjecte yani şiringalanmış bir dll. aslında bu program sadece formu dll ye gömüp programlamışlar. aynı tarz şiringalanan dll yaptım zaten ama bu dll nin bazı işlevlerini daha yapmayı başaramadım o yüzden bunu kullanacagım. Aslında kullanıyorum ama kontrol ettirmem lazım yani process explorer ile o dll killeniyor yada suspend ediliyor. onu handle nosundan postmessage ile kontrol ettireceğim ama thread id yemiyor handle no lazım.
-
Handle dediğin Türkçesi tutamaçtır.Windowhandle Processhandle bunlarin hepside farkli tutamaclardir.Senin ne istedigini ben tam olarak anlayabilmis degilim hocam? Process handle degilmi aradigin sey ?
-
hocam bak şu resimde gördüğün dll
http://pic1.resimupload.com/r8/resim_736933832.JPG
bunu ben dll inject programınla lgn_client.exe programına injliyorum. Burada ThreadID si yazıyor ama hiçbir şekilde onu kontrol ettiremiyorum. handleno alabilirsem postmessage deneyeceğim. Bu bildiğimiz formun dll ye gömülmüş hali. Onun için title yani tepe adından kontrol ettirebilirm ama nasıl alacağmı bilmiyorum. Bu dll yi ben yazmadım.
-
Hocam anladigim kadariyla PostMessage icin, hwndyi almak istiorsun..
Soyle soyliyim, PostMessage den WM_SHOW yollayacaksan, programin buna karsi verecek bir cevabi olmasi gerekir.
Yani programda form yoksa neyi show yapacaksin?
Eger varsada zaten spy++ yada benzeri bir programla bulup, className ini alabilirsin FindWindow icin illa pencere basligini bilmen gerekmiyor.
-
evet hwnd alacağım. Class name de alsam olurda bi şu spy++ nerden indirebilirm. yada ona benzer bir programı. wm_show a yanıt verecek biliyorum.
