系统托盘编程时出现的问题

huaxu2002 2006-02-27 10:50:15
我在编写系统托盘代码时,出现了一个情况,_ShellNotifyIcon这个结构是在shellapi.h中定义的,但我查看其它托盘代码时并没有看到代码中包含shellapi.h这个文件,vc编译无错误,但我不包含则出现错误,需要包含这个文件,当编译无错程序运行时出现一个问题:每当鼠标移过托盘时托盘就会消失,但程序并没有结束,请问这是什么原因导致的?如何解决?
...全文
62 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
angel_rabbit 2006-02-28
  • 打赏
  • 举报
回复
NOTIFYICONDATA MainIcon;

//托盘中心
extern NOTIFYICONDATA MainIcon;
MainIcon.cbSize = sizeof(NOTIFYICONDATA);
MainIcon.hWnd = *this;
MainIcon.uID = ID_ICONID;
MainIcon.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
MainIcon.uCallbackMessage = WM_ICONMESSAGE;
MainIcon.hIcon = AfxGetApp()->LoadIcon(IDI_ICON1);
strcpy(MainIcon.szTip,"Your Text");
int ret = Shell_NotifyIcon(NIM_ADD,&MainIcon);
huaxu2002 2006-02-28
  • 打赏
  • 举报
回复
问题解决了。
在以前的代码中,生成时是建立一个标准的Win32程序,这里面包含一个StdAfx.h这个预处理文件,当定义一个NOTIFYICONDATA nid;时,编译会提示NOTIFYICONDATA未定义,shellapi.h是包含在windows.h中的。若生成一个空的Win32程序则不会出现上述问题。
谢谢!

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧