PDA

View Full Version : سوال: کار با هندل و فرستادن کلید



vbprogrammerx
یک شنبه 30 تیر 1387, 08:56 صبح
با سلام
دو سوال :
1- من هندل یه برنامه را دارم می خوام اونو ببندم کسی می تونه کمکم کنه
2- من می خواستم کلید های alt+tab را به برنامه بفرستم با sendkeys تست کردم نتونستم.
خیلی خیلی ممنون.

xxxxx_xxxxx
یک شنبه 30 تیر 1387, 09:41 صبح
با تابع Setforeground مي توني پنجره فعال رو برنامه خودت قرار بدي و بعد با همون sendkeys برنامه رو ببندي.

r0ot$harp
یک شنبه 30 تیر 1387, 11:47 صبح
دوست عزیز روش Setforeground روش بسیار دقیقی نیست . شما از این روش استفاده کنید .



Private Const WM_CLOSE = &H10

Private Declare Function SendMessage _
Lib "user32" _
Alias "SendMessageA" (ByVal hwnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
lParam As Any) As Long

Private Declare Function FindWindow _
Lib "user32" _
Alias "FindWindowA" (ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long

Private Sub Form_Load()

Dim HwndMain As Long

Dim b As Long

HwndMain = FindWindow("Notepad", vbNullString)

If HwndMain <> 0 Then
b = SendMessage(HwndMain, WM_CLOSE, 0&, 0&)
End If

End Sub



باتشکر احسان

vbprogrammerx
دوشنبه 31 تیر 1387, 09:06 صبح
سلام
از راهنماییتون
ولی سوال دومم هنوز برام حل نشده که چجوری میشه کلید های Alt+Tab رو بفرستم.؟
یه سوال جدید :
برنامه من بکگراند اجرا میشه می خواستم کاربر بازدن یه کلید تابعی که در برنامم نوشتم فراخونی کنه(مثل دیکشنری بابیلون که با زدن مثلا F10 برنامه بالا میاد)
خیلی متشکرم.

xxxxx_xxxxx
دوشنبه 31 تیر 1387, 09:29 صبح
Alt + Tab رو براي چي لازم داريد؟ فكر نمي كنم هيچ كجا لازم بشه.
اينجور برنامه ها فقط تا زماني كه در حافظه حضور دارند مي تونند نسبت به كليد هاي تابعي حساس باشند به همين خاطر شما بايد اول برنامه رو به tray بفرستيد ( كنار ساعت) برنامه كامل ابنو دوستان زحمت كشيدن و تو سايت موجود هست.

موفق باشيد.

Mbt925
دوشنبه 31 تیر 1387, 11:30 صبح
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Const WM_CLOSE = &H10


PostMessage(hWnd, WM_CLOSE, 0&, 0&)

vbprogrammerx
سه شنبه 08 مرداد 1387, 08:35 صبح
با سلام و تشکر از دوستان
-من خیلی سعی کردم کلید های ALT+Tab را با تابع Sendkeys بفرستم و لی موفق نشدم
-در ضمن برنامه من بکگراند اجرا میشه می خواستم کاربر بازدن یه کلید تابعی که در برنامم نوشتم فراخونی کنه(مثل دیکشنری بابیلون که با زدن مثلا F10 برنامه بالا میاد)

اگه کسی بتونه کمک کنه ممنون میشم.
خدا نگهدارتون