我正在使用DirectX 9在Vs 2008/windows7上进行示例。 我收到错误消息。SHGetFolderPath':标识符未找到
1> ------构建开始:项目:VideoCapture,配置:Unicode的调试的Win32 ------ 1>编译...
1> VideoCaptureDlg.cpp
1> \ VideoCaptureDlg.cpp(169):错误C2065:SHGFP_TYPE_CURRENT':未声明的标识符
1> \ VideoCaptureDlg.cpp(169):错误C3861: '的SHGetFolderPath':标识符没有找到
1> \ VideoCaptureDlg.cpp (173):错误C2065:'SHGFP_TYPE_CURRENT':未声明的标识符
1>。\ VideoCaptureDlg.cpp(173):错误C3861:'SHGetFolderPath':标识符未找到 1>。\ VideoCaptureDlg.cpp(1025):Warning C4244:'argument':从'int'转换为'WORD',可能丢失数据
1>。\ VideoCaptureDlg.cpp(1180):error C2065: 'SHGFP_TYPE_CURRENT':未声明的标识符
1> \ VideoCaptureDlg.cpp(1180):错误C3861: '的SHGetFolderPath':错误C2065: 'SHGFP_TYPE_CURRENT':未找到
1> \ VideoCaptureDlg.cpp(1184)标识符未申报标识符
1> \ VideoCaptureDlg.cpp(1184):错误C3861: '的SHGetFolderPath':未找到
我已经加入SHLOBJ.H和SHELL32.LIB以及仍然是示出了相同的错误标识符。
我试图改变以下基于Windows 7和Internet Explorer 8中的stdafx.h文件中的宏的价值却是露出冲突“C1189:#错误:与_WIN32_IE设置_WIN32_WINNT设置冲突”
//参考MSDN获取有关不同平台相应值的最新信息。
#ifndef WINVER // Allow use of features specific to Windows XP or later.
#define WINVER 0x0501 // Change this to the appropriate value to target other versions of Windows.
#endif
#ifndef _WIN32_WINNT // Allow use of features specific to Windows XP or later.
#define _WIN32_WINNT 0x0601 // Change this to the appropriate value to target other versions of Windows.
#endif
#ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later.
#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
#endif
#ifndef _WIN32_IE // Allow use of features specific to IE 6.0 or later.
#define _WIN32_IE 0x0800 // Change this to the appropriate value to target other versions of IE.
#endif
对此问题的任何建议都会有帮助。
stdafx.h中是啊,我设立之前的任何包含文件 –
感动评论基于什么触发错误回答。 – Richard