gpt4 book ai didi

winapi - SHGet文件夹路径

转载 作者:行者123 更新时间:2023-12-04 14:38:49 26 4
gpt4 key购买 nike

此代码适用于 Windows 7但不适用于 Windows XP(仅输出启动文件夹路径的一部分)

#include <iostream>
#include <shlobj.h>

using namespace std;
int main()
{
wchar_t startupFolder[1024];
HRESULT hr = SHGetFolderPath(0, CSIDL_STARTUP, 0, 0, startupFolder);
if (SUCCEEDED(hr))
wcout << L"Startup folder = " << startupFolder << endl;
else
cout << "Error when getting startup folder\n";
getchar();
return 0;
}

输出是:启动文件夹 = C:\Documents and Settings\Admin\<- 光标在这里。不提供换行符。我也有俄罗斯窗口 xp。我认为这是 unicode 问题。

当我使用 wprintf 时,我得到:C:\Documents and Settings\Admin\???????? .....

谢谢。

最佳答案

问题是您的 XP 控制台使用的字体不包含您尝试输出的俄语字符的字形。 Windows 7 随附并默认在其控制台中使用的字体确实具有更广泛的 Unicode 代码点覆盖范围。您需要将控制台配置为使用包含所需字形的字体。

关于winapi - SHGet文件夹路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10062113/

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