现在的位置: 首页 > 综合 > 正文

C++win32 SDK下面如何修改应用程序的图标

2013年08月21日 ⁄ 综合 ⁄ 共 513字 ⁄ 字号 评论关闭
 

很简单,你需要一个ico资源,在解决方案浏览器中加入就可以了。
3个步骤。
1.你需要得到HINSTANCE。这个根据不同的情况会有不同的方法。
char buf[MAX_PATH];
::GetModuleFileNameA(0, (LPCH)&buf, MAX_PATH); // 这里0就会默认得到调用进程的实例句柄
HINSTANCE instance = ::GetModuleHandleA(buf);

2.创建HICON
HICON hIcon = ::LoadIconA(instance, MAKEINTRESOURCEA(IDI_ICON1));
3.得到HWND,这个也有很多方法,大家自己看着办。我的是这样得到的:
HWND hWnd = m_pkAppWindow->GetStatusWindowReference();
4.发送两个消息
if ( hIcon && hWnd )
{
   ::SendMessageA((HWND)hWnd, WM_SETICON, 1, (LPARAM)hIcon);
   ::SendMessageA((HWND)hWnd, WM_SETICON, 0, (LPARAM)hIcon);
}

然后你生成的应用程序的ICON就会是这个icon.

抱歉!评论已关闭.