Also ich möchter gerne ein Fenster anhand des namen in den vordergrund bringen das klappt auch so aber wenn das fenstern nicht aktiv ist geht das ganze nicht.
weiß jemand vllt wie ich das fenster aktivieren kann und in den vordergrund bringen kann wenn es nicht aktiv ist?
mein code
vielen dank
weiß jemand vllt wie ich das fenster aktivieren kann und in den vordergrund bringen kann wenn es nicht aktiv ist?
mein code
VB.NET-Quellcode
- Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As IntPtr) As Integer
- Private Declare Function GetForegroundWindow Lib "user32" () As Integer
- Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As IntPtr, ByRef lpdwProcessId As Integer) As Integer
- Private Const WM_SETFOCUS As Int32 = &H7
- Private Function SetForegroundWindowEx(ByVal hWndWindow As Long) As Boolean
- Dim lThreadForeWin As Long
- Dim lThreadWindow As Long
- lThreadWindow = GetWindowThreadProcessId(CType(hWndWindow, IntPtr), 0)
- lThreadForeWin = GetWindowThreadProcessId(CType(GetForegroundWindow(), IntPtr), 0)
- If lThreadWindow = lThreadForeWin Then
- SetForegroundWindowEx = CBool(SetForegroundWindow(CType(hWndWindow, IntPtr)))
- Else
- SetForegroundWindowEx = CBool(SetForegroundWindow(CType(hWndWindow, IntPtr)))
- End If
- End Function
- Private Sub btnShow_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnShow.Click
- Dim Process As Process = Process.GetProcessesByName("PROGRAMM")(0)
- If Process.MainWindowTitle.Contains("NAME") Then
- SetForegroundWindowEx(CLng(Process.MainWindowHandle))
- Else
- ' fenster mit dem namen in vordergrund bringen
- End If
- End Sub
vielen dank