function GetMonthNum(Month: string): Word;
const
ArrTypeInfo: array[0..1, 1..13] of LCTYPE = (
(LOCALE_SMONTHNAME1,
LOCALE_SMONTHNAME2,
LOCALE_SMONTHNAME3,
LOCALE_SMONTHNAME4,
LOCALE_SMONTHNAME5,
LOCALE_SMONTHNAME6,
LOCALE_SMONTHNAME7,
LOCALE_SMONTHNAME8,
LOCALE_SMONTHNAME9,
LOCALE_SMONTHNAME10,
LOCALE_SMONTHNAME11,
LOCALE_SMONTHNAME12,
LOCALE_SMONTHNAME13),
(LOCALE_SABBREVMONTHNAME1,
LOCALE_SABBREVMONTHNAME2,
LOCALE_SABBREVMONTHNAME3,
LOCALE_SABBREVMONTHNAME4,
LOCALE_SABBREVMONTHNAME5,
LOCALE_SABBREVMONTHNAME6,
LOCALE_SABBREVMONTHNAME7,
LOCALE_SABBREVMONTHNAME8,
LOCALE_SABBREVMONTHNAME9,
LOCALE_SABBREVMONTHNAME10,
LOCALE_SABBREVMONTHNAME11,
LOCALE_SABBREVMONTHNAME12,
LOCALE_SABBREVMONTHNAME13));
var
i, j: Integer;
LCData : array[0..255] of Char;
begin
Result := 0;
Month := AnsiLowerCase(Month);
for i := 0 to 1 do
for j := 1 to 13 do
begin
GetLocaleInfo(LOCALE_SYSTEM_DEFAULT,
ArrTypeInfo[i, j],
LCData,
SizeOf(LCData) - 1);
if (Month = LCData) and (LCData <> '') then
begin
Result := j;
Break
end;
end;
end;