7
Tôi muốn kiểm tra xem biểu tượng có tồn tại trong systray hay không; như trong, nếu "X" ứng dụng đã hiển thị biểu tượng systray của họ trong khu vực systray.Biểu tượng tồn tại trong systray?
Tôi đã Googled để biết thông tin về cách thực hiện việc này nhưng tôi không tìm thấy gì.
UPDATE:
này những gì tôi đã cố gắng trong VB.NET dịch các ví dụ C# của url gived bởi Robert bình luận, nhưng tôi không biết làm thế nào để tiếp tục nó.
Imports System.Runtime.InteropServices
Public Class Form1
Public Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function FindWindowEx Lib "user32.dll" Alias "FindWindowExA" (ByVal hWndParent As IntPtr, ByVal hWndChildAfter As IntPtr, ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
Public Shared Function WindowHandle(sTitle As String) As Long
Return FindWindow(vbNullString, sTitle)
End Function
Private Shared Function GetSystemTrayHandle() As IntPtr
Dim hWndTray As IntPtr = FindWindow("Shell_TrayWnd", Nothing)
If hWndTray <> IntPtr.Zero Then
hWndTray = FindWindowEx(hWndTray, IntPtr.Zero, "TrayNotifyWnd", Nothing)
If hWndTray <> IntPtr.Zero Then
hWndTray = FindWindowEx(hWndTray, IntPtr.Zero, "SysPager", Nothing)
If hWndTray <> IntPtr.Zero Then
hWndTray = FindWindowEx(hWndTray, IntPtr.Zero, "ToolbarWindow32", Nothing)
Return hWndTray
End If
End If
End If
Return IntPtr.Zero
End Function
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
MsgBox(WindowHandle("Steam")) ' 6687230
MsgBox(GetSystemTrayHandle()) ' 62789
End Sub
End Class
bạn muốn làm điều đó cho ứng dụng của bạn hoặc ứng dụng của bên thứ 3? –
http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/4c4f60ce-3573-433d-994e-9c17f95187f0/ –
Cảm ơn nhận xét, dành cho ứng dụng của bên thứ 3 – ElektroStudios