想把一个软件做成多语言的版本,想通过用INI文件的方法来实现。中文版的软件和中英文的INI文件已搞定,目标是在安装的时候通过检测系统的语言版本自动安装对应版本的软件,不知道该如何实现?请高手们教下我这个新人。最好讲些步骤之类的。

解决方案 »

  1.   

    这是两种方法function GetWindowsLanguage: string;
    var
        WinLanguage: array [0..50] of char;
    begin
        VerLanguageName(GetSystemDefaultLangID, WinLanguage, 50);
        Result := StrPas(WinLanguage);
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
        ShowMessage(GetWindowsLanguage);   
    end;{********************************************************************} 
    { another code:
    {********************************************************************} function GetWindowsLanguage1(LCTYPE: LCTYPE {type of information}): string;
    var 
        Buffer : PChar;   
        Size : integer;
    begin 
        Size := GetLocaleInfo (LOCALE_USER_DEFAULT, LCType, nil, 0);   
        GetMem(Buffer, Size);
        try 
        GetLocaleInfo (LOCALE_USER_DEFAULT, LCTYPE, Buffer, Size);
        Result := string(Buffer);
        finally
        FreeMem(Buffer);   
        end;
    end;  procedure TForm1.Button2Click(Sender: TObject);
    begin
       Caption := GetWindowsLanguage1(LOCALE_SABBREVLANGNAME);
    end;
      

  2.   

    我去试试看~~感谢wintergoes!!
      

  3.   

    SMLPack 去找下吧,应该能解决你的问题
      

  4.   

    有Api判断的:GetSystemDefaultLangID,2052代表中文,日文1041,英文1033,繁体1028
      

  5.   

    delphi语言是ASCII码,那我做成日文,,印度文那怎么办?要怎么弄?
      

  6.   

    可以使用Delphi自带的ITE实现多语言