使用純資源DLL檔案實現多語言選單、介面文字、Tooltips等 (轉)
在使用vc寫簡繁體通用時,對實現選單、介面、Tool等的文字時無法實現通用。如果寫簡體和繁體各一套程式,那肯定不現實。查詢所有資料和文章都只能實現選單的多語言,且使用起來也不方便;並且無法實現介面、Tooltips等的多語言。因而,採用純資源的DLL來實現多語言。
純資源DLL檔案實現步驟如下:
(1)建立簡繁體MDI或SDI程式後,把VC自動建立的.rc,.rc2,.ico,.bmp等檔案從程式框架中刪除;
(2)使用Projects的 Dynamic-Link Library分別建立簡繁體純資源dll檔案,把由MDI或SDI程式建立的.rc,.rc2,.ico,.bmp等檔案加入到該工程檔案中;
(3)在Project選單項選擇Settings然後選擇Project Settings的Link標籤;然後在Project Options框內輸入/NOENTRY。編譯後就產生純資源DLL檔案;
純資源DLL檔案加入沒有任何資源的MDI或SDI程式,其步驟如下:
(1)在主應用程式類的.h檔案中定義protected 的 HINSTANCE 型別變數(如:mhInstMenu);
(2)在主應用程式類的.cpp檔案::InitInstance()過程中新增下面程式碼:
mhInstMenu = ::LoadLibrary("Menu.dll"); // Menu.dll為多語言純資源的dll檔案
if (mhInstMenu == NULL)
{
return FALSE; // failed to load the localized res
}
else {
AfxSetResourceHandle(m_hInstMenu); // get resources from the DLL
}
(3)在主應用程式類的.cpp檔案::ExitInstance()函式過程中新增下面程式碼:
FreeLibrary(mhInstMenu);
注意:Menu.dll檔案可以有三种放置方法:
A、和.exe檔案在同一個路徑下面;
B、放在98的System或的System32路徑下面;
C、放在透過Path設定的路徑下面。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-988540/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 透過ini實現多語言選單 (轉)
- VC開發多語言介面支援----INI實現(轉)
- MatrixOne介面多語言資原始檔更新
- 使用 R 語言實現簡單的文字識別程式
- ASP實現多語言支援 (轉)
- 超輕量級純文字介面 REPL 類語言 IDEIDE
- 多語言版vfp程式設計簡單實現 (轉)程式設計
- 判斷檔案為文字檔案還是二進位制檔案(C語言實現)C語言
- C語言實現檔案複製功能(包括文字檔案和二進位制檔案)C語言
- C語言實現檔案加密C語言加密
- Asp.net 多語言介面的實現方法...ASP.NET
- 資料結構——單連結串列介面實現(C語言)資料結構C語言
- 檔案複製(Go語言實現)Go
- 多國語言程式設計之資源轉換 (轉)程式設計
- DLL檔案中Form的使用 (轉)ORM
- ASP程式介面的多語言支援 (轉)
- Go 語言介面及使用介面實現連結串列插入Go
- C#實現多語言介面程式的方法介紹C#
- 使用IDropTarget介面同時支援文字和檔案拖放 (轉)
- c語言多檔案編譯C語言編譯
- 文字編輯器原始檔(java語言) (轉)Java
- 使用Go語言實現簡單MapReduce框架Go框架
- C語言標頭檔案的使用(轉載)C語言
- OAF多語言的實現
- java 語音用xml檔案實現圖形介面 xml檔案JavaXML
- 純js實現 vue 元件 與 vue 單檔案元件對比JSVue元件
- 用Go語言實現多協程檔案上傳,斷點續傳,你如何實現?Go斷點
- 平臺化專案多語言架構實現架構
- 使用DLL檔案中封裝的視窗 (轉)封裝
- 多使用者,多語言設定(轉)
- PHP實現單檔案、多檔案上傳 封裝 物件導向實現檔案上傳PHP封裝物件
- apk反編譯生成程式的原始碼和圖片、XML配置、語言資源等檔案APK編譯原始碼XML
- SPOOL 命令使用例項【oracle匯出純文字格式檔案】Oracle
- Golang | Go語言多型的實現與interface使用Golang多型
- dwg、dxf檔案多行文字轉單行文字
- VC開發多語言介面支援的簡單方法
- .NET CORE 多語言實現方案
- so easy 前端實現多語言前端