معرفی برخی از توابع API ویندوز

سلام دوستان خسته نباشید، توی این مطلب قراره که با هم با برخی از توابع api ویندوز آشنا بشیم پس حتما این مطلب رو تا آخر بخونید تا بفهمید که توابع api چه نعمتی هستن😁
توابع api ویندوز چی هستن؟
توابع api ویندوز در واقع یک سری از تابع ها هستن که به زبان C طراحی شدن و هر کدومشون توی یک dll قرار داره. کلا ویندوز بر پایه همین توابع کار میکنه؛ مثلا وقتی شما یک پنجره رو Minimize میکنید توی پس زمینه تابع CloseWindow فراخوانی میشه. به طور کلی api یک رابط برنامه نویسی کاربردی هست که کار ها رو آسون تر میکنه.
نکات مهم :
- در ویندوز با همه عناصر GUI مثل یک پنجره رفتار میشه و هر پنجره یک Handle داره
- در اینجا منظور ما از Handle، در واقع Handle یک پنجره است نه یک کنترل دیگه (این بحثش جداس)
- هر پنجره یک Handle منحصر به فرد داره که نوعش توی دات نت IntPtr است و ما با استفاده از handle ها پنجره هارو مدیریت میکنیم
- ویندوز یک سیستم عامل مبتنی بر پیامه، یعنی هر کاری که انجام میشه به صورت یک پیام خاص توی سیستم عامل شبیه سازی میشه. برای مثال ما برای بستن یک پنجره باید پیام WM_CLOSE رو براش ارسال کنیم
- ما دو فایل برای شما آماده کردیم که شامل توابع api ویندوز هستن…یکی با VB.net یکی با C#.net
- تو این مطلب ما فقط کاربرد هر تابع رو توضیح میدیم
لیست برخی از توابع به همراه توضیحات :
تابع GetForegroundWindow :
با استفاده از این تابع میتونید هندل پنجره ای که کاربر باهاش سروکار داره رو بگیرید(توی ساخت کیلاگر خیلی مفیده)
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر هندل پنجره مورد نظر است]
تابع GetActiveWindow :
با استفاده از این تابع میشه هندل پنجره ای که روی بقیه پنجره هاست رو به دست بیارید
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر هندل پنجره مورد نظر است]
تابع GetClassName :
با استفاده از این تابع میتونید کلاس یک پنجره رو به دست بیارید.( بعدا میشه توی تابع FindWindow ازش استفاده کنید)
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع FindWindow :
این تابع با استفاده از نام پنجره و نام کلاس هندل یک پنجره رو برمیگردونه. (البته اگه پنجر مورد نظر موجود باشه)
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر هندل پنجره مورد نظر است]
تابع GetParent :
این تابع هندل پنجره والد یک پنجره رو برمیگردونه
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر هندل پنجره مورد نظر است]
تابع GetWindowText :
این تابع متن یک پنجره رو به دست میاره(اینم تو کیلاگر نویسی خیلی خوبه)
تابع IsWindow :
این تابع برسی میکنه که آیا هندل وردودی متعلق به یک پنجره است یا نه
[اگر هندل ورودی برای یک پنجره بود true رو برمیگردونه]
تابع SetForegroundWindow :
کاری میکنه که اون هندل پنجره ای که شما بش میدید تبدیل به پنجره فعال بشه!(برای اذیت کردن خیلی خوبه😁)
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع EnableWindow :
این تابع یک پنجره را فعال یا غیر فعال میکند
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع BlockInput :
این تابع تمام دستگاه های ورودی از جمله ماوس و کیبرد رو غیرفعال میکنه😎
البته دسترسی ادمین میخواد….حواستون باشه چون اگه یک بار فعال شه باید سیستم رو از کیس کامپیوتر ریستارت کنید.(میتونید از تایمر ها استفاده کنید به طوری که 10 ثانیه فعال و 10 ثانیه غیر فعال بشه)
تابع SetWindowText :
این تابع خاصیت Text یک پنجره رو عوض میکنه
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع CloseWindow :
این تابع یک پنجره رو به حالت Minimize میبره
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع OpenIcon :
این تابع پنجره ای که به حالت Minimize رفته رو به حالت قبلیش بر میگردونه
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع BringWindowToTop :
این تابع باعث میشه که یک پنجره روی همه پنجره ها قرار بگیره
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع ShowWindow :
این تابع نحوه نمایش یک پنجره رو تعیین میکنه(مثلا میشه باهاش یک پنجره رو به طور کامل مخفی کرد یا بردش تو حالت Minimize)
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع ClipCursor :
این تابع برای ماوس یک محدوده تعیین میکند که اشاره گر ماوس نمیتواند از آن خارج شود
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع GetClipCursor :
این تابع محدوده اشاره گر ماوس رو برمیگردونه
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع GetCursorPos :
این تابع مختصات فعلی ماوس رو تو صفحه نمایش به دست میاره
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع SetCursorPos :
این تابع مختصات فعلی ماوس رو تو صفحه نمایش عوض میکنه
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع mouse_event :
این تابع تمام کار های ماوس رو برامون انجام میده
تابع keybd_event :
این تابع تمام کار های صفحه کلید را بازسازی میکند
تابع GetAsyncKeyState :
این تابع برسی میکنه که آیا یک کلید خاص در لحظه فراخوانی فشرده شده یا نه
[در صورتی که کلید فشرده شده باشه مقدار برگشتی برابر با مقداری غیر از 0 است]
تابع RegisterHotKey :
این تابع یک کلید میانبر برای ما رزرو میکنه
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع UnregisterHotKey :
این تابع با استفاده از id که برای کلید میانبرمون ثبت کردیم، میاد و کلید رو از حالت رزرو شده بر میداره
[در صورتی که تابع کارشو درست انجام بده مقدار برگشتی برابر با true است]
تابع SendMessage :
با استفاده از این تابع تقریبا میشه هر کاری کرد
خوب دوستان اینم از این. توابع api زیاد هستن و نمیشه همه رو توی یک مطلب توضیح داد و مثال زد در صورتی که دوست دارین بیشتر راجع به توابع api بدونید تو قسمت نظرات بگید تا یک ویدیو براش بسازم
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.