为了方便程序最小化和隐藏与打开,系统托盘图标效果如下:
代码如下:
NOTIFYICONDATAW nidTrayIcon;
nidTrayIcon.cbSize=sizeof(NOTIFYICONDATAW);
nidTrayIcon.hIcon =(HICON)LoadImage(g_hInst,MAKEINTRESOURCE(IDI_ICON1), IMAGE_ICON, 16,16,0); //g_hInst 来自于InitInstance第一个参数HINSTANCE
nidTrayIcon.hWnd=hDlg; //hDlg对话框句柄
nidTrayIcon.uCallbackMessage =-1; //用户自定义消息,用于处理用户点击图标事件(比如点击以后将窗体显示出来)
nidTrayIcon.uFlags = NIF_MESSAGE | NIF_ICON;
nidTrayIcon.uID = 13; //0~12系统保留
Shell_NotifyIcon(NIM_ADD,&nidTrayIcon);
请注意,针对windows mobile 6.5平台的TrayIcon托盘图标,.ico图标必须使用16*16 4bit的图标,绝对不能使用16*16 32bit的图标,否则进入桌面后,系统必定死机,多数的图标都是16*16,或者32*32,但是基本上都是32bit的。
请参考相关连接:http://msdn.microsoft.com/en-us/library/ms911889.aspx