c++ - 如何从文件中获取图标,然后将其设置为创建的快捷方式?
问题描述
首先,我试图通过SHGetFileInfo
windows 功能获取图标。
SHFILEINFO targetFileInfo;
std::memset(&targetFileInfo, 0, sizeof(targetFileInfo));
SHGetFileInfo((LPSTR) "file.txt", 0, &targetFileInfo,
sizeof(targetFileInfo),SHGFI_ICONLOCATION);
然后,我尝试使用我编写的函数targetFileInfo.hIcon
创建一个快捷方式。targetFileInfo.iIcon
CreateShortcut((LPSTR)application_path,
(LPSTR)target_app_path_lnkext,
(LPSTR) "Testr",
targetFileInfo.hIcon,
targetFileInfo.iIcon);
在该函数中,我的代码如下所示:
// CreateShortcut
// ...
psl->SetIconLocation((LPCSTR)hIcon, iIcon);
// ...
( psl
is a IShellLink*
) 函数运行,一切正常。但是快捷方式是使用默认图标创建的,而不是使用我设置它使用的图标。
解决方案
推荐阅读
- react-testing-library - 对使用 React 测试库在 Input 元素中输入文本感到困惑
- sleep - Castalia 3.2 在应用程序中休眠
- sql - MariaDB 触发器将时差计算为总小时数的小数和小时的十分之一总是四舍五入
- mongodb - MongoError: Unrecognized pipeline stage name: '$expr' on using $divide and $expr in aggregation
- amazon-web-services - 日志事件触发的 AWS CloudWatch 规则
- python - 在 Pycharm 中捕获 Pandas DtypeWarning
- nsis - 需要 NSIS 示例脚本以及脚本运行所需的所有文件
- javascript - 使用 Charts.JS 显示标签
- c# - 如何将 Ctrl + G 发送到另一个应用程序?
- excel - 使用 VBA 创建下拉列表时出现问题。下面提到的代码会创建下拉列表,但每次重新打开文件时都需要修复