Возвращать сообщения на родном языке компьютера



Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{
Call inLanguage like this to get the German text else return english
if you use different coutntry codes you can do more
}
{############### FGetLanguageSettings ############################
# Author: Walter Verhoeven
# Date:   14.Sep.2000
# Coming From: InLanguage
#  Next Event: NONE
#  Parameters: NONE
#   Objective: See the users regional settings and return Country #number code
#   Change:
#     DD-MMM-YYYYY ¦Programmer
#                1)
#
########################################################}
function FGetLanguageSettings: Integer;
var
OutputBuffer: PChar;
SelectedLCID: LCID;               //DWORD constand in Windows.pas 
begin
OutputBuffer := StrAlloc(4);     //alocate memory for the PChar 
try
try
SelectedLCID := GetUserDefaultLCID;
GetLocaleInfo(SelectedLCID, LOCALE_ICOUNTRY, OutputBuffer, 3);
Result := StrToInt(OutputBuffer);
except
Result := 49;   //german 
Abort;
end;
finally
StrDispose(OutputBuffer);   //alway's free the memory alocated 
end;
end;
{############## INLanguage #######################################
# Author: Walter Verhoeven
# Date:   .Jun.2000
# Coming From:
#  Next Event: FGetLanguageSettings
#  Parameters: Eglish and german text
#   Objective: provide a method to return
#              english or german results based on the
# users window prefered language setting.
#   Change:
#     DD-MMM-YYYYY ¦Programmer
#                1)
#
##############################################################}
function INLanguage(English, German: string): string;
begin
case FGetLanguageSettings of
49: Result  := German;   // Return the german string 
43: Result  := German;   // If the PC has a german preferance 
41: Result  := German;
352: Result := German;
else
Result := English;      // if not german then english 
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(Format(INLanguage('My %s English Word',
'Riesiges %s Software-Angebot'), ['Hopla']));
end;

Далее: Как добавить нужный язык в систему »»