سلام
تو vb.net ،هر کاری کردم نتونستمcaption پنجره هایی که کاربر در حال استفاده هست رو به دست بیارم.مثلا اگه ie رو باز کرده،مقدار windows internet explorer رو بگیرم.از هر کی میپرسم بلد نیست!یعنی حتی تو ایران ویج کسی اینو بل نیست!!
تو رو خدا کمک کنید
این مال VB6 هست همش هم با توابع api هست تغییر خاصی نمی خواد تا توی .net کار کنه
کد:
Option Explicit
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hWnd As Long) As Long
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Sub Timer1_Timer()
Dim ActiveWindowText As String
Dim ActiveWindowHwnd As Long
'get the current foreground window
' returns the current active window from all windows opened
' GetActiveWindow is limited to the current application
ActiveWindowHwnd = GetForegroundWindow()
'create a buffer string the size of the window text (caption)
ActiveWindowText = String(GetWindowTextLength(ActiveWindowHwnd) + 1, Chr$(0))
'retrieve the window text
GetWindowText ActiveWindowHwnd, ActiveWindowText, Len(ActiveWindowText)
'remove any trailing null characters
ActiveWindowText = Left$(ActiveWindowText, InStr(ActiveWindowText, Chr$(0)) - 1)
'set a label caption to the current actve window
Label1.Caption = ActiveWindowText
End Sub
تایمر و لیبل روی فورمت باشه
دوست عزیز،خودم این ها رو بلد بودم.تابع GetForegroundwindow در vb.net کار میکنه اما getwindowtext در vb.net کارنمیکنه.