托盘图标气泡不显示

3

我在Visual Studio 2005 Express版本中编写了托盘图标实用程序的C++代码,托盘图标气球成功显示,但后来我删除了我的防火墙,切换到Windows防火墙,现在我正在使用另一种防火墙软件。现在我运行同样的项目,气球成功显示,但当我重新构建它时,就看不到气球了。我的Shell_NotifyIcon方法仍然返回true。

以下是代码:

nid.cbSize              = sizeof( NOTIFYICONDATA_V2_SIZE ); // i've tested NOTIFYICONDATA   //and nid as well

nid.hWnd                = hWnd;
nid.uID                 = uID;
nid.uFlags              = NIF_ICON | NIF_MESSAGE | NIF_TIP|NIF_INFO;
nid.dwInfoFlags         = 0x00000004;
strcpy(nid.szInfoTitle  , balloonTitle);
strcpy(nid.szInfo       , balloonMsg);
int ret = Shell_NotifyIcon( NIM_MODIFY, &nid );

有人能建议一下问题出在哪里吗?看起来与操作系统有关,我的操作系统是XP,我甚至已经将“EnableBalloonTips”修改为1了。

Faran Shabbir


1
有人能帮忙翻译一下吗? - Faran Shabbir
1
好的,我自己解决了。 nid.cbSize = sizeof(NOTIFYICONDATA_V2_SIZE); 应该改为 nid.cbSize = NOTIFYICONDATA_V2_SIZE; - Faran Shabbir
1个回答

3

好的,我自己弄清楚了。应该将nid.cbSize = sizeof( NOTIFYICONDATA_V2_SIZE );改为nid.cbSize = NOTIFYICONDATA_V2_SIZE;


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接