純資源的dll檔案來實現多語言

2021-04-15 06:43:11 字數 957 閱讀 7790

在使用vc寫簡繁體通用程式時,對實現選單、介面、tooltips等的文字時無法實現通用。如果寫簡體和繁體各一套程式,那肯定不現實。查詢所有資料和文章都只能實現選單的多語言,且使用起來也不方便;並且無法實現介面、tooltips等的多語言。因而,採用純資源的dll檔案來實現多語言。

純資源dll檔案實現步驟如下:

(1)建立簡繁體mdi或sdi程式後,把vc框架自動建立的.rc,.rc2,.ico,.bmp等檔案從程式框架中刪除;

(2)使用projects的win32 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)

else

(3)在主應用程式類的.cpp檔案::exitinstance()函式過程中新增下面**:

freelibrary(mhinstmenu);

注意:menu.dll檔案可以有三種放置方法:

a、和.exe檔案在同乙個路徑下面;

b、放在windows98的system或windows2000的system32路徑下面;

c、放在通過path設定的路徑下面。 

多語言選單 dll純資源

偶然在網上看到一片文章,覺得很不錯,拿來。原文如下 解決國際化問題這的確是個老話重談了,因為這裡面確實也沒有什麼可以稱的上技術含量的,只是實現起來有點煩瑣,不過我還是要寫出來,希望剛接觸這方面的同行們不至於走太多的彎路。由於mfc應用程式也有自己的資源檔案,當你呼叫mfc函式比如 cstring l...

多語言系統的實現

被老美賣掉後,工作多了,工資漲得卻少了,做不完的活,現總算完成了手頭上的緊急工作,上來寫一下有關多語言系統的實現,我們的做法是 如果系統只是簡繁體,直接就可以用函式實現了.因為他們具有一一對應關係,可是其它語言呢?由於不具有語言的對照關係,只能分別寫了.最初的系統我們是採用寫多個頁面來實現,後面覺得...

QT的多語言實現

基本流程是 先生成ts檔案,然後生成qm檔案,最後通過qtranslator類來載入qm檔案,實現多語言包的切換 在qt的專案檔案 pro 中新增 translations ts yyy.ts 如果是多行,則用 分割 pro檔案 qt core gui translations login.ts s...