ايران ويج

نسخه‌ی کامل: چند تا سوال دارم اساتيد
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
چرا وقتي مي خوايم هندل يه پنجره مثل my documents كه يه پوشه هست رو بدست بياريم مي نويسيم
findwindow(vbnullstring,"mydocuments")'aval minevisim vbnullstring
ولي واسه يه پنجره مثل notepad مي نويسيم
findwindow("notepad",vbnullstring)'in dafe aval captione window ro neveshtim
؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ Amaze

findwindowex دقيقا به چه دردي مي خوره؟ Question

فايل h. اي پي اي sendmessage اسمش چيه؟ Amaze
دوست عزیز هر دو مشخصه کلی داره
1- Window Class Name
Window Caption Name -2

هر کدوم از اینها کاربرد خاص خودشو داره

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

حالا جواب سوال شما :
همون مثال Notepad رو میزنم

وقتی برنامه Notepad.exe رو باز میکنی

Window Caption Name)= Untitled - NotePad)

خوب حالا وقتی یه فایل رو با نام Test.txt رو باز میکنیم Window Caption Name تغییر میکنه و به Text.txt - NotePad تبدیل میشه
ولی در دو حالت بالا Window Class Name ثابت میمونه و برابر Notepad میمونه

و این این دلیلی که در بعضی مواقع نمیشه از Window Caption Name استفاده کرد چون برنامه نویس نمیدونه که Window Caption Name به چه نامهایی تبدیل میشه نمیتونه از اون استفاده کنه

ولی چون Window Class Name ثابته میشه در FindWindow از اون استفاده کرد

دستت درد نكنه
ممنون
سوال سوميو كسي ميدونه؟
کد:
[DllImport("user32.dll", EntryPoint="SendMessageA")]
private static extern int SendMessage (int hwnd, int wMsg, int wParam, int lParam);


این مربوط به #C

سوال دوم

FindWindowEx برای پیدا کردن هندل پنجرهای کوچک درون یه فرم کلی

مثلا برای پیدا کردن هندل Text Box از این API استفاده میشه
نقل قول: فايل h. اي پي اي sendmessage اسمش چيه؟
windows.h