我正在为 Windows 7 及更高版本编写 C++ 桌面应用程序。
我想获取 AppData/Roaming 文件夹的路径,所以我使用SHGetKnownFolderPath:
#include "stdafx.h"
#include <windows.h>
#include <ShlObj.h>
void hello()
{
LPWSTR roamingPath;
SHGetKnownFolderPath(FOLDERID_RoamingAppData, 0, NULL, &roamingPath);
问题:构建失败identifier "SHGetKnownFolderPath" is undefined
,这很奇怪,因为我认为我包含了正确的标题。
笔记:
- Visual Studio 2015 告诉我我的编译选项是
/Yu"stdafx.h" /GS /analyze- /W3 /Zc:wchar_t /ZI /Gm /Od /Fd"Debug\vc140.pdb" /Zc:inline /fp:precise /D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "_USRDLL" /D "_WINDLL" /D "_MBCS" /errorReport:prompt /WX- /Zc:forScope /RTC1 /Gd /Oy- /MDd /Fa"Debug\" /EHsc /nologo /Fo"Debug\" /Fp"Debug\OverlayIcon.pch"
. - 与错误不同:标识符:“SHGetKnownFolderPath”未识别,问题在于提问者的目标不仅仅是桌面。