1.asp部分 a.建立語言包 1.在各個子系統建立"語言包"目錄 , 如BBS--> language -->Simplified --->Traditional --->English 2 為每個ASP,js,HTC 建立語言文件,如ACMBBStopic.asp.lang ,treeview.htc.lang , 用來存放語言全局變量。 如目錄Language/English/ ACMBBSShow.asp.lang Public Const LangRollway="reverse roll" Public Const LangInvaildUser="invaild user" Public Const LanGmailbox="mail box" Public Const LangSysSetup="system setup" Public Const LangACMBBS="Acer BBS" Public Const LangBulltn="Acer bulltin" Public Const LangPersnSetup="personal setting" Public Const LangPublicTools="Public Tools" 如目錄Language/ Simplified / ACMBBSShow.asp.lang Public Const LangRollway="反向滾動" Public Const LangInvaildUser="非法用戶" Public Const LangMailbox="郵件資料夾" Public Const LangSysSetup="系統設置" Public Const LangACMBBS="明碁網咖" Public Const LangBulltn="公告欄" Public Const LangPersnSetup="個人設定" Public Const LangPublicTools="群組工具" 語言全局變量命名規則; 必須是VBscript 變量定義方式 Public Const 變量名為 : "Lang" + Message Descption
b. 設定Global.asa SUB session_OnStart Session.CODEPAGE="1252" '1252En '950繁體 '936簡體 Session.Contents("Language")="EngLish" 'EngLish 'Traditional 'Simplified Session.Contents("StrCharset")="big5" 'iso-8859-1 'big5 'gb2312 End Sub c. 引用語言包 1.建立 BBS--> language -->script 目錄, IncludeLang.vbs 2.在各個asp,js,HTC頭部 <Script language=vbscript runat="server" src="./Language/script/IncludeLang.vbs"></Script> <% call IncludeLangFile("acmMainPageshow.asp.lang",Session.Contents("Language"))%> 3.使用思想 o 將 *.lang 等語言包用Function GetFileContents 讀到變量中, o 使用vbscript中EXECUTE方法在Server執行 IncludeLang.vbs 內容如下
'//'********************************************************* '// ' Purpose: open include 文件 '// ' Inputs: strIncludeFile 路徑 '// ' Returns: All Text '//'*********************************************************
Function GetFileContents(strIncludeFile) On Error Resume Next Dim objfso Dim objText Dim strPage Set objFSO = Server.CreateObject("Scripting.FileSystemObject") Set objText = objFSO.OpenTextFile(Server.MapPath(strIncludeFile)) GetFileContents= objText.ReadAll objText.Close Set objText = Nothing Set objFSO = Nothing IF Err Then Response.Write "Error open this language package file<<" & strIncludeFile & ">>!" Response.End END IF End Function
'//'********************************************************* '// ' Purpose: 動態 include 文件 '// ' Inputs: strIncludeFile 路徑,語言種類 '// ' Returns: 執行變量到全局變量 '//'********************************************************* Function IncludeLangFile(StrFileName,Language) On Error Resume Next dim StrLangPackagePath dim StrLanguagePath StrLanguagePath=Language StrLangPackagePath="./Language/" & StrLanguagePath & "/" & StrFileName Execute(GetFileContents(StrLangPackagePath)) IF Err Then Response.Write "Error Include this language package file<<" & strIncludeFile & ">>! check the file's syntax" Response.End END IF End Function 2.圖片部分 為帶有漢字圖片建立 BBS--> language -->simplified-->Image --->traditional-->Image --->English -->Image 動態Include <img src="language/Session.Contents("Language"))/image/AAA.gif">