一直想为控制台加上一个漂亮的图标,但在GOOGLE上找了很久也没有找到相关的介绍,
没想到在整理硬盘时居然发现我的硬盘上有太多这样的例子了,
<<Undocumented Windows 2000 Secrets>> 这本书的附书光盘上的所有控制台程序都有图标,于是找一个看了下,
大概步骤应该是这样的:
在C源文件中自定义入口,如下:
DWORD Main (DWORD argc, PTBYTE
*
argv, PTBYTE
*
argp)
事实上这个Main并不是真正的入口,后面会说!
然后是最关键的两个头文件:
ProgInfo.h 这里面定义了很多宏,不过大多我都没看,只是瞟一眼而已
W32Start.h 这个头文件是重中之重,它实了对自定义入口,在文件最后用如下语句定义了入口:
#pragma
comment (linker, "/entry:"W32Start"")
并在W32Start函数中调用了上面的那个Main函数:
if
(ConsoleOpen ())
{
dCodePage = GetConsoleOutputCP ();
SetConsoleOutputCP (GetACP ());
GetConsoleScreenBufferInfo (ghStdOutput, & csbi);
gdLine = csbi.dwSize.X;
dStatus = Main (pwc -> argc, pwc -> argv, pwc -> argp);
&nb
{
dCodePage = GetConsoleOutputCP ();
SetConsoleOutputCP (GetACP ());
GetConsoleScreenBufferInfo (ghStdOutput, & csbi);
gdLine = csbi.dwSize.X;
dStatus = Main (pwc -> argc, pwc -> argv, pwc -> argp);
&nb

本文介绍了如何为控制台程序添加图标,主要步骤包括在C源文件中自定义入口,使用特定的头文件和RC资源文件。通过引用W32Start.h中的宏和函数,实现图标与程序的结合。在RC文件中定义图标,宏的巧妙使用确保了工程名与图标文件名的一致性。
最低0.47元/天 解锁文章
1198

被折叠的 条评论
为什么被折叠?



