ورود

View Full Version : کمک فوری در مورد هندل



aminbrleevb
یک شنبه 13 مرداد 1387, 03:09 صبح
با سلام
یه سوال داشتم و اون اینه که چطور می تونم هندل تمام اجزای یه برنامه رو که میشه روشون کلیک کرد رو بدست بیارم من حدود 60 صفحه خوندم ولی نتونستم به جوابم برسم
حال روشنتر میگم
یه سری برنامه هایی هست تو سایت که به وسیله اونا میشه هندل یه دکمه رو در یه برنامه پیدا کرد ولی بعضی از دکمه ها در برنامه هندلشون مشخص نیست لطفا کمک کنید که چگونه این هندل ها رو میشه پیدا کرد آیا امان داره هندل نداشته باشند تا جایی که من می دونم نه.
مرسی

Mbt925
یک شنبه 13 مرداد 1387, 03:21 صبح
با استفاده از تابع FindWindowX می تونید به کنترل های وابسته به یک پنجره دست پیدا کنید.
نمونه:

majjjj
یک شنبه 13 مرداد 1387, 10:10 صبح
با سلام
یه سوال داشتم و اون اینه که چطور می تونم هندل تمام اجزای یه برنامه رو که میشه روشون کلیک کرد رو بدست بیارم من حدود 60 صفحه خوندم ولی نتونستم به جوابم برسم
حال روشنتر میگم
یه سری برنامه هایی هست تو سایت که به وسیله اونا میشه هندل یه دکمه رو در یه برنامه پیدا کرد ولی بعضی از دکمه ها در برنامه هندلشون مشخص نیست لطفا کمک کنید که چگونه این هندل ها رو میشه پیدا کرد آیا امان داره هندل نداشته باشند تا جایی که من می دونم نه.
مرسی

تا جایی که من میدونم هم بعضی برنامه ها مثل مسنجر یاهو نمیشه هندل بعضی کنترلهاشون رو گرفت
یک جایی هم در مورد فایرفاکس همین رو خوندم ولی هنوز امتحانش نکردم

Mbt925
یک شنبه 13 مرداد 1387, 12:11 عصر
بعضی از دکمه ها در برنامه هندلشون مشخص نیست لطفا کمک کنید که چگونه این هندل ها رو میشه پیدا کرد آیا امکان داره هندل نداشته باشند تا جایی که من می دونم نه.


دکمه های استاندارد همشون دارای هندل هستن ولی در مورد بقیه ی دکمه ها نمیشه اظهار نظر کرد، چون بقیه ی دکمه ها ساخته شده ی خود برنامه نویس ها هستن و خیلی از اونا یا بدلیل علم کم و یا بدلایل دیگه برای کنترل ها هندل در نظر نمی گیرن.

aminbrleevb
یک شنبه 13 مرداد 1387, 19:42 عصر
Mbt925 برانیمه خوبتان ولی مشکل اینجاست که من می خوام این برنامه ای که شما گزاشتین رو طوری تنظیم کنم که هندل اجزای یه برنامه دیگه رو بدست بیاره ولی نمیدونم باید چی کار کنم
من فکر کردم در کد پایین اگه هندل برنامه مورد نظرمون رو بزاریم درست میشه ولی درست نشد اطفا بگین چی کار کنم
این کد شما


hWndAf = FindWindowEx(Form1.hWnd, ByVal hWndAf, "ThunderTextbox", vbNullString)


اینم کاری که من کردم


hWndAf = FindWindowEx(1377702, ByVal hWndAf, "TApplication", vbNullString)

Mbt925
دوشنبه 14 مرداد 1387, 09:47 صبح
اشیاء مختلف در برنامه های مختلف دارای کلاس های مختلف هستند
برای بدست آوردن اجزا کلاس ها خیلی مهمن.

برای مثال :
کلاس دکمه های ویژوال بیسیک : ThunderRT6CommandButton
کلاس دکمه ی موجود در ماشین حساب ویندوز : Button
( دکمه های ویندوز)

meisambandari
دوشنبه 14 مرداد 1387, 10:33 صبح
دکمه های استاندارد همشون دارای هندل هستن ولی در مورد بقیه ی دکمه ها نمیشه اظهار نظر کرد، چون بقیه ی دکمه ها ساخته شده ی خود برنامه نویس ها هستن و خیلی از اونا یا بدلیل علم کم و یا بدلایل دیگه برای کنترل ها هندل در نظر نمی گیرن.
یعنی راهی برای دسترسی به اینجور کنترلها که هندل ندارن وجود نداره ؟

Mbt925
دوشنبه 14 مرداد 1387, 11:57 صبح
نه نمیشه.

drwatson
دوشنبه 14 مرداد 1387, 12:35 عصر
Mbt925 برانیمه خوبتان ولی مشکل اینجاست که من می خوام این برنامه ای که شما گزاشتین رو طوری تنظیم کنم که هندل اجزای یه برنامه دیگه رو بدست بیاره ولی نمیدونم باید چی کار کنم
من فکر کردم در کد پایین اگه هندل برنامه مورد نظرمون رو بزاریم درست میشه ولی درست نشد اطفا بگین چی کار کنم
این کد شما


hWndAf = FindWindowEx(Form1.hWnd, ByVal hWndAf, "ThunderTextbox", vbNullString)


اینم کاری که من کردم


hWndAf = FindWindowEx(1377702, ByVal hWndAf, "TApplication", vbNullString)


شما اول برای گرفتن هندل اون برنامه باید از تابعfindwindow(vbnullstring,WindowTitle)
استفاده کنی و تایتل پنجره اصلی برنامه رو بجای windowTitle بنویسی
بعد از مقدار برگشتی این تابع در findwindowEx استفاده کنی