程序需要通过动态库调用,在系统托盘上显示图标并响应鼠标消息,但创建图标后鼠标移动到托盘,图标就消失了,请问如何解决?在动态库的中创建图标的代码如下:
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);
}
,作为输出函数,但是主程序调用时,鼠标一移动到托盘,图标就消失了,如何才能解决?
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);
}
,作为输出函数,但是主程序调用时,鼠标一移动到托盘,图标就消失了,如何才能解决?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货