gpt4 book ai didi

c++ - 如何使用 Qt/C++ 获取 Windows 路径

转载 作者:行者123 更新时间:2023-11-28 00:56:36 25 4
gpt4 key购买 nike

我正在尝试使用 Qt 和 C++ 获取 Windows 路径。下面的代码可以编译,但不能获取 Qt 中的 windows 文件夹路径。相同的代码在 Visual Studio 2010 中有效

      wchar_t path[MAX_PATH];
SHGetFolderPath(NULL, CSIDL_WINDOWS, NULL, 0, path);

下面的代码更改似乎有效:

     int const bufferSize = 512;        
QScopedPointer<WCHAR> dirPath(new WCHAR[bufferSize]);
ZeroMemory( dirPath.operator ->(), bufferSize);
SHGetFolderPath(NULL, CSIDL_WINDOWS, NULL, 0, dirPath.operator ->());

最佳答案

没有 Qt 函数来执行此操作,但是您所要求的可以通过读取环境变量 WINDIR 来实现:

QStringList env_list(QProcess::systemEnvironment());

int idx = env_list.indexOf(QRegExp("^WINDIR=.*", Qt::CaseInsensitive));
if (idx > -1)
{
QStringList windir = env_list[idx].split('=');
qDebug() << "Var : " << windir[0];
qDebug() << "Path: " << windir[1];
}

输出:

Var :  "WINDIR"
Path: "C:\WINDOWS"

关于c++ - 如何使用 Qt/C++ 获取 Windows 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10901615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com