 |
大体的步骤是这样的:
1、先用GetIconInfo函数获得HICON所代表的图标的结构:
typedef struct _ICONINFO { // ii
BOOL fIcon; // TRUE for icon, FALSE for cursor
DWORD xHotspot; // the x hotspot coordinate for cursor
DWORD yHotspot; // the y hotspot coordinate for cursor
HBITMAP hbmMask; // handle to monochrome AND mask bitmap
HBITMAP hbmColor; // handle to device dependent XOR mask bitmap
} ICONINFO;
2、使用GetDIBits获得上面这个结构中两个HBITMAP代表的位图的内容。
3、按照.ico文件的格式写入文件。
具体的例子可以参考John Hornick
写的IconPro的例子(http://msdn.microsoft.com/library/en-us/dnwui/html/msdn_icons.asp)。例子是C语言的,你需要改为汇编的。你也可以参考Kenny Kerr写的一篇文章http://www.kennyandkarin.com/Kenny/CodeCorner/Tools/IconBrowser/,关于.ico的文件格式,写得更详细些。
此问题由李海回答。
附加关键字:编程, 源程序, programming, source code, 其他语言, asm, vba, vbscript, C/C++, MFC, C++ Builder, Borland C++, Turbo C, C, BCB, 图形、图象, picture, graph, image, draw。
|