水木子 发表于 2014-9-18 21:03:29

请教!如何通过图标句柄得到图标文件,IconHandle To File。【已解决】

本帖最后由 水木子 于 2014-9-19 21:21 编辑

请教!已知图标句柄,如何得到图标文件?即:XXX.ico

看了些相关资料,还是没有搞懂,望指教!
http://msdn.microsoft.com/en-us/library/ms648067(v=vs.85).aspx

#include <Array.au3>
#Include <WinAPIEx.au3>

$hIcon = _WinAPI_ShellExtractAssociatedIcon(@ScriptFullPath, 0)
$aIcon = _WinAPI_GetIconInfo($hIcon)
_ArrayDisplay($aIcon)

austere 发表于 2014-9-18 21:32:18

是保存 ico到文件吗?我用的 _ExtractIconToFile

水木子 发表于 2014-9-18 21:37:04

回复 2# austere

这个函数库我知道,很不错的。

不过我是想要的是,用图标句柄怎么获得图标文件。

austere 发表于 2014-9-19 18:50:36

等了好久一直没有人关注,不知道这样是不是版主要的结果,上码。。。#include <Array.au3>
#include <WinAPIEx.au3>

$hIcon = _WinAPI_ShellExtractAssociatedIcon(@ScriptFullPath, 0)
$tu = _WinAPI_Create32BitHICON($hIcon, 1)
;$aIcon = _WinAPI_GetIconInfo($hIcon)
;_ArrayDisplay($aIcon)
_WinAPI_SaveHICONToFile("d:\123.ico", $tu)
_WinAPI_DestroyIcon($tu)
你的码我稍微修改了一下,最后2句仅作输出测试用。。

austere 发表于 2014-9-19 19:05:52

回复 4# austere


    搞错了,现在才明白楼主的真正意思,是根据句柄获取图标的路径地址啊~

水木子 发表于 2014-9-19 21:03:33

本帖最后由 水木子 于 2014-9-19 21:28 编辑

回复 5# austere

谢谢!你的理解是对的,是我把问题想复杂了。

找了半天没发现这个API函数,正准备自己写一个呢!没想到已经有现成了,不错!

zxxputian2 发表于 2017-10-2 16:14:11

新方法,谢谢提供

zxxputian2 发表于 2017-12-6 17:26:26

值得学习,谢谢提供

dabaiyun 发表于 2018-3-9 13:29:27

值得学习的东西
页: [1]
查看完整版本: 请教!如何通过图标句柄得到图标文件,IconHandle To File。【已解决】