程序需要通过动态库调用,在系统托盘上显示图标并响应鼠标消息,但创建图标后鼠标移动到托盘,图标就消失了,请问如何解决?在动态库的中创建图标的代码如下:
void test()
{
//AFX_MANAGE_STATE(AfxGetStaticModuleState());

HWND handle = dlgSetMode.m_hWnd;     NOTIFYICONDATA tnd; 
    tnd.cbSize=sizeof(NOTIFYICONDATA); 
    tnd.hWnd=NULL; 
    tnd.uID=IDI_ICON_IPCAM; 
    tnd.uFlags=NIF_MESSAGE|NIF_ICON|NIF_TIP; 
    tnd.uCallbackMessage=WM_MSG; 
//tnd.hIcon=AfxGetApp()->LoadIcon(IDI_ICON_IPCAM);
    tnd.hIcon=LoadIcon( AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON_IPCAM)); 
    strcpy(tnd.szTip,"托盘演示软件"); 
    Shell_NotifyIcon(NIM_ADD,&tnd);

}
,作为输出函数,但是主程序调用时,鼠标一移动到托盘,图标就消失了,如何才能解决?