C++ 如何获取windows的系统路径?

C++ 如何获取windows的系统路径?,c++,windows,C++,Windows,我正在尝试获取windows的所有系统路径。阅读时,它说要使用KNOWNFOLDERID。因此,我遵循的例子。当尝试使用该示例时,我得到一个编译错误 Test.cpp: #include <tchar.h> #include <sysinfoapi.h> #include <Shlobj.h> #include <combaseapi.h> #include <WTypesbase.h> #include <winnt.h>

我正在尝试获取windows的所有系统路径。阅读时,它说要使用KNOWNFOLDERID。因此,我遵循的例子。当尝试使用该示例时,我得到一个编译错误

Test.cpp:

#include <tchar.h>
#include <sysinfoapi.h>
#include <Shlobj.h>
#include <combaseapi.h>
#include <WTypesbase.h>
#include <winnt.h>

int main() {
    IKnownFolderManager *pManager;

    HRESULT hr = CoCreateInstance(
        CLSID_KnownFolderManager, 
        NULL, CLSCTX_INPROC_SERVER, 
        IID_PPV_ARGS(&pManager)
    );
}
#包括
#包括
#包括
#包括
#包括
#包括
int main(){
IKnownFolderManager*pManager;
HRESULT hr=CoCreateInstance(
CLSID_Known文件夹管理器,
NULL,CLSCTX\U在PROC\U服务器中,
IID_PPV_参数(&P管理器)
);
}
这就是我目前所拥有的。我得到的错误是

错误: 从类型“IKnownFolderManager*”转换为类型的静态\u无效 “IUnknown*” 静态铸件(*pp)


我在windows 10中从命令行编译为:
g++test.cpp

IKnownFolderManager
需要
。如果没有包含,编译器不知道如何将
IKnownFolderManager
转换为
IUnknown

为什么向环境路径添加一些bin文件夹可以解决编译问题?很抱歉,我以为问题底部的文本是如何添加到路径,没有得到它们——发生了。我放置了标题,但仍然得到了相同的编译错误:/I甚至尝试了
#include