当前位置:C++技术网 > 精选软件 > Win32SDK开发的程序如何设置图标和版本信息

Win32SDK开发的程序如何设置图标和版本信息

更新时间:2016-05-21 12:18:20浏览次数:1+次

    MFC程序项目都自动添加好了默认图标文件和图标资源以及版本信息,然而win32SDK开发的程序如何实现呢?这是我做的一个C++技术网内部专用的拾色器软件,大小20K,共享出来了,可以在软件下载频道去下载使用:点此去下载C++技术网拾色器

    先看看效果图:

1.程序运行左上角的logo图标

程序运行左上角的logo图标

2.任务栏中看到程序的图标

任务栏中看到程序的图标

3.生成的程序的文件图标

生成的程序的文件图标

4.右击exe文件,可以看到详细信息中有版本信息,产品名称,文件说明等。是可以在开发时设置的。

右击exe文件,可以看到详细信息中有版本信息,产品名称,文件说明等。是可以在开发时设置的。


    看完效果,就来看看win32下如何实现的。如果想实现20K,准确的是19.5KB大小的软件,用win32SDK直接写很容易。但是这样一来,很多MFC中的做好的事情需要我们自己来做一下,可能一下子你都蒙了。我们这里说一下,很快你就知道其实很简单的。

    我们发现前面三个图中,logo都是一致的,我们只需要提供一个.ico的文件,在VS的资源视图中导入到项目。然后自动生成一个ID,你可以改成你喜欢的,也可以不改。反正用的时候,不要搞错就行。我改成了IDI_LOGO。

    然后在WinMain函数中将Icon图标设置为我们导入的这个就行了,看下图所示:

    WinMain函数就是标准的,在窗口类的图标设置中,使用LoadIcon加载程序中的图标资源即可。第一个参数如果为NULL,则直接使用系统预定义的图标,如果设置为实例句柄,则可以使用程序自己导入的图标。然后使用MAKEINTRESOURCE宏处理一下导入的资源的ID,变成字符串类型传入函数。我这里是改了图标的ID的,所以是IDI_LOGO,导入图标的默认ID是IDI_ICON1,后面是数字,依次编号,第二个图标就是IDI_ICON2了。

    这样就可以实现上述的图标效果。不过要注意,导入资源后,VS自动创建了RC文件和resource.h文件,IDI_ICON1这个宏的定义是在resource.h里的,所以,记得包含一下resource.h。

    到此,图标搞定,就这么简单。如果你要设置程序的版本信息,那么就在资源视图中再创建一个版本资源,如下图所示:

要设置程序的版本信息,那么就在资源视图中再创建一个版本资源

    双击“VS_VERSION_INFO”即可打开编辑版本的编辑器,如下图所示:

双击“VS_VERSION_INFO”即可打开编辑版本的编辑器

    编辑好后,保存,重新编译项目,编译完后就大功告成!!赶紧试试吧。