我需要从文件中提取图标资源。我有一个结构(Resource
),它包含字节数组,大小,查找句柄,加载句柄,锁定句柄(分别来自FindResource
,LoadResource
和LockResource
)。
我知道我需要获取图标的Icon手柄。然后我需要使用GetIconInfo来检索位掩码。然后我使用Image.FromHbitmap(h)
来获取图像。然后,我使用图像的尺寸作为CreateIconFromResourceEx
的参数来检索尺寸合适的图标。
有没有人有一些代码可以做到这一点?我可以自己声明所有P / Invoke。谢谢!
我的原始代码每次返回32x32。
Dim out As ICONINFO
Dim h As IntPtr = res.hLock
GetIconInfo(h, out)
Dim s As Image = Image.FromHbitmap(out.hbmMask)
h = ResourceExplorer.CreateIconFromResourceEx(res.bArray, res.hSize, True, &H30000, s.Width, s.Height, 0)
PictureBox1.Image = Icon.FromHandle(h).ToBitmap