RE:Cambiar el idioma y formato de fecha
aqui tienes un procedimiento para cambiar la fecha
procedure TForm1.Button1Click(Sender: TObject);
procedure FechaDelSistema(Fecha: TDateTime);
var
FecSys: TSystemTime;
nA, nM, nD: Word;
begin
DecodeDate(Fecha, nA,nM,nD);
GetLocalTime(FecSys);
FecSys.wYear := nA;
FecSys.wMonth := nM;
FecSys.wDay := nD;
SetLocalTime(FecSys);
end;
begin
FechaDelSistema( StrToDate('23/08/2002') );
end;
aqui tienes otro que te extrae el idioma. apartir de ahi intenta cambiar la del sistema
procedure TForm1.Button1Click(Sender: TObject);
function IdiomaDelSistema:string;
var
IdiomaID:LangID;
Idioma: array [0..100] of char;
begin
{Obtiene el ID del idioma del sistema}
{Get System ID}
IdiomaID:=GetSystemDefaultLangID;
{Obtiene el nombre del idioma}
{Get Languaje Name}
VerLanguageName(IdiomaID,Idioma,100);
Result:=String(Idioma);
end;
begin
Label1.Caption:=IdiomaDelSistema;
end;