Duilib将UI资源文件打包到exe教程

时间:2023-03-09 17:31:13
Duilib将UI资源文件打包到exe教程

转载:http://www.voidcn.com/blog/w839687571/article/p-6001921.html

转载:http://www.voidcn.com/blog/x356982611/article/p-560532.html

需要注意的是WindowImplBase中是这样载入ZIP资源的,因此资源类型必须为ZIPRES

一、在工程中新建res文件夹

Duilib将UI资源文件打包到exe教程

二、把窗口需要的xml文件和图标放到res文件夹中

Duilib将UI资源文件打包到exe教程

三、把这些文件进行压缩,格式为.zip(必须按照下面方式压缩,不然程序加载资源会失败)

Duilib将UI资源文件打包到exe教程

Duilib将UI资源文件打包到exe教程

四、修改工程属性

第一步:确保是默认设置

Duilib将UI资源文件打包到exe教程

第二步:

Duilib将UI资源文件打包到exe教程

编辑好的结果:

Duilib将UI资源文件打包到exe教程

注:个人根据每个工程具体设置,这个只是个例子。。。

第三步:

Duilib将UI资源文件打包到exe教程

最后点击确定,工程属性修改完成。

五、添加资源

第一步:

Duilib将UI资源文件打包到exe教程

第二步:

Duilib将UI资源文件打包到exe教程

第三步:

Duilib将UI资源文件打包到exe教程

第四步:

Duilib将UI资源文件打包到exe教程

第五步:

Duilib将UI资源文件打包到exe教程

六、程序中设置资源ID, 和 加载资源方式.

 virtual LPCTSTR GetResourceID() const
{
return MAKEINTRESOURCE(资源ID);
};
virtual UILIB_RESOURCETYPE GetResourceType() const
{
return UILIB_ZIPRESOURCE;
};

WinMain函数这个写:

 int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
CPaintManagerUI::SetInstance(hInstance); HRESULT Hr = ::CoInitialize(NULL);
if( FAILED(Hr) ) return ; CLoginWnd Login;
Login.Create(NULL, _T("LoginWnd"), UI_WNDSTYLE_FRAME, WS_EX_WINDOWEDGE);
Login.CenterWindow();
Login.ShowModal(); ::CoUninitialize();
return ;
}

测试工程:

Demo