Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 托盘图标未在Visual c+中显示图像+;_C++_C - Fatal编程技术网

C++ 托盘图标未在Visual c+中显示图像+;

C++ 托盘图标未在Visual c+中显示图像+;,c++,c,C++,C,我在VisualStudio2010工作。我正在创建一个简单的应用程序,它在任务栏(任务栏)中显示图标。我面临的问题是,应用程序显示在任务栏中,但它的图标没有显示。我的代码如下 NOTIFYICONDATA nid; nid.cbSize = sizeof(NOTIFYICONDATA); nid.hWnd = hWnd; nid.uID = 100; nid.uVersion = NOTIFYICON_VERSION; nid.uCallbackMessage = WM_MYMESS

我在VisualStudio2010工作。我正在创建一个简单的应用程序,它在任务栏(任务栏)中显示图标。我面临的问题是,应用程序显示在任务栏中,但它的图标没有显示。我的代码如下

    NOTIFYICONDATA nid; 
nid.cbSize = sizeof(NOTIFYICONDATA);
nid.hWnd = hWnd;
nid.uID = 100;
nid.uVersion = NOTIFYICON_VERSION;
nid.uCallbackMessage = WM_MYMESSAGE;
nid.hIcon = LoadIcon(NULL,  MAKEINTRESOURCE(IDI_ICON2));
//nid.hIcon =(HICON) hIcon;
wcscpy_s(nid.szTip, L"ultraDefender");
nid.uFlags = NIF_MESSAGE NIF_ICON NIF_TIP;
Shell_NotifyIcon(NIM_ADD, &nid);
请引导我

nid.uFlags = NIF_MESSAGE NIF_ICON NIF_TIP;
应该是

nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
IDI_ICON2    
而且

应该是

nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
IDI_ICON2    

如果这是图标的名称

,则应在填充之前将结构归零。。。在非零值将影响结果的情况下,还有一些您未使用的其他成员:

NOTIFYICONDATA nid;
ZeroMemory( &nid, sizeof(nid) );
...
此外,正如noz所说,您的旗帜需要:

nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;

我认为您的LoadIcon()调用是错误的:
LoadIcon(NULL)
只适用于标准图标;您需要包含图标的EXE或DLL的HINSTANCE或HMODULE。但即使是标准图标也不会显示nid.uFlags=NIF_MESSAGE | NIF_icon | NIF_TIP;出现语法错误表达式为expectednid.uFlags=NIF_MESSAGE | NIF_ICON | NIF_TIP;应出现语法错误表达式