после того как я вызываю функцию
DeleteTrayIcon(), естественно после функции AddTrayIcon,
Иконка не удаляется из трея...
Public Const NIF_MESSAGE = &H1
Public Const NIF_ICON = &H2
Public Const NIF_TIP = &H4
Public Const NIM_ADD = &H0
Public Const NIM_MODIFY = &H1
Public Const NIM_DELETE = &H2
Public Const WM_RBUTTONDOWN = &H204
Type NOTIFYICONDATA
cbSize As Long
hWnd As Long
uID As Long
uFlags As Long
uCallbackMessage As Long
hIcon As Long
szTip As String * 64
End Type
Private NID As NOTIFYICONDATA
Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long
Public Sub AddTrayIcon(IDhWnd As Long, Icon As Long, Text As String)
NID.szTip = Left$(Text, 63) & Chr$(0)
NID.uFlags = NIF_TIP + NIF_MESSAGE + NIF_ICON
NID.uID = IDhWnd
NID.cbSize = Len(NID)
NID.hWnd = IDhWnd
NID.uCallbackMessage = WM_RBUTTONDOWN
NID.hIcon = Icon
Res& = Shell_NotifyIcon(NIM_ADD, NID)
End Sub
Public Sub DeleteTrayIcon()
NID.cbSize = Len(NID)
Res& = Shell_NotifyIcon(NIM_DELETE, NID)
End Sub
Public Sub ItemModify(Icon As Long, Text As String)
NID.uFlags = NIF_TIP + NIF_ICON
NID.cbSize = Len(NID)
NID.szTip = Left$(Text, 63) & Chr$(0)
NID.hIcon = Icon
Res& = Shell_NotifyIcon(NIM_MODIFY, NID)
End Sub