gpt4 book ai didi

c# - SHLoadIndirectString 的返回值是错误代码

转载 作者:行者123 更新时间:2023-11-28 05:26:04 25 4
gpt4 key购买 nike

您好,我一直在尝试使用从相应应用程序的 AppManifest.xml 获取的 metro 应用程序的名称。才知道SHLoadIndirectString可用于此目的。在手动检查其功能时,我无法获得结果资源。代码片段如下。

#include <iostream>
using namespace std;
#include <Shlwapi.h>
int main(){
LPWSTR output = L"";
LPWSTR input = L"@{Microsoft.BingMaps_2.1.3230.2048_x64__8wekyb3d8bbwe?ms-resource://Microsoft.BingMaps/resources/AppDisplayName}";
int result = SHLoadIndirectString(input, output, sizeof(output), NULL );
cout<<output;
return 0;
}

返回值“result”始终为负值(如果我正在更改与应用程序相关的输入字符串,则会发生变化)。请指导我的错误。谢谢。

最佳答案

得到正确答案。

#include <iostream>

using namespace std;
#include <Shlwapi.h>
int main()
{
PWSTR output = (PWSTR) malloc(sizeof(WCHAR)*256);


PCWSTR input = L"@{C:\\Program Files\\WindowsApps\\Microsoft.BingMaps_2.1.3230.2048_x64__8wekyb3d8bbwe\\resources.pri?ms-resource://Microsoft.BingMaps/Resources/AppShortDisplayName}";
int result = SHLoadIndirectString(input, output, 256, NULL );

cout<<output;
return 0;
}

关于c# - SHLoadIndirectString 的返回值是错误代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40526834/

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