[VB.NET] Które okno jest teraz aktywne?


(adan2013) #1

Jak sprawdzić które okno jest aktualnie aktywne (najlepiej jakby podawało tytuł okna)?

I co jak nie ma atywnego ona i wyświetlany jest pulpit?


(lucas80) #2

Dodaj dwie funkcje

Public Declare Function GetForegroundWindow Lib "user32" Alias "GetForegroundWindow" () As IntPtr

Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As IntPtr, ByVal lpString As System.Text.StringBuilder, ByVal cch As Integer) As Integer

A gdzieś w kodzie dajesz przykładowo

Dim Caption As New System.Text.StringBuilder(256)

        GetWindowText(GetForegroundWindow, Caption, Caption.Capacity)

        MsgBox(Caption.ToString)

A jak nie ma aktywnego okna, czyli pulpit jest aktywny to wyświetla pusty ciąg.

Żródło