Delphi 获取系统的语言环境参数GetSystemDefaultLangID、VerLanguageName、GetLocaleInfo
1
核心的两个API函数:GetSystemDefaultLangID 和 VerLanguageName。
GetSystemDefaultLangID:获得系统默认语言的ID
VerLanguageName: 通过语言的ID转换为语言的名称 , 根据16位语言代码获取一种语言的名称
uses Windows;
function GetSystemLanguageName: string;
var
ID: LangID;
LanguageName: array[0..255] of Char;
begin
// 获取当前系统 Locale
// 对于简体中文,ID = 2052
ID := GetSystemDefaultLangID;
// 将 ID 转换为文字
// 对于简体中文,LanguageName =“中文(中国)”
VerLanguageName(ID, LanguageName, SizeOf(LanguageName));
Result := LanguageName;
end;
2
还可以通过获得系统本地信息来获取语言环境参数 GetLocaleInfo
Windows API函数GetLocaleInfo 用来获得系统信息,比如系统语言, 货币符号等代码如下:
function TForm1.GetLocaleInformation(Flag: Integer): String;
var
pcLCA: Array[0..20] of Char;
begin
if( GetLocaleInfo(LOCALE_SYSTEM_DEFAULT,Flag,pcLCA,19) <= 0 ) then
begin
pcLCA[0] := #0;
end;
Result := pcLCA;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(GetLocaleInformation(LOCALE_SENGLANGUAGE));
end;
参数"Flag"可以取下列值:
LOCALE_NOUSEROVERRIDE { do not use user overrides }
LOCALE_USE_CP_ACP { use the system ACP }
LOCALE_ILANGUAGE { 语言代号 }
LOCALE_SLANGUAGE { 本地语言名称 }
LOCALE_SENGLANGUAGE { 语言的英语名 }
LOCALE_SABBREVLANGNAME { 语言名称缩写 } 简体:CHS 繁体: CHT
LOCALE_SNATIVELANGNAME { 本地语言名称 }
LOCALE_ICOUNTRY { 国家代号 }
LOCALE_SCOUNTRY { 国家名 }
LOCALE_SENGCOUNTRY { 国家的英语名称 }
LOCALE_SABBREVCTRYNAME { 国家名缩写 }
LOCALE_SNATIVECTRYNAME { 国家名 }
LOCALE_IDEFAULTLANGUAGE { 缺省语言代号 }
LOCALE_IDEFAULTCOUNTRY { 缺省国家代码 }
LOCALE_IDEFAULTCODEPAGE { 缺省oem代码页 }
LOCALE_IDEFAULTANSICODEPAGE { 缺省ansi代码页 }
LOCALE_IDEFAULTMACCODEPAGE { 缺省mac页 }
LOCALE_SLIST { 列表项分割符 }
LOCALE_IMEASURE { 测量单位0 = 米制, 1 = 英制 }
LOCALE_SDECIMAL { 小数点符号 }
LOCALE_STHOUSAND { 千位分割符 }
LOCALE_SGROUPING { digit grouping }
LOCALE_IDIGITS { number of fractional digits }
LOCALE_ILZERO { leading zeros for decimal }
LOCALE_INEGNUMBER { 负数模式 }
LOCALE_SNATIVEDIGITS { native ascii 0-9 }
LOCALE_SCURRENCY { 本地货币符号 }
LOCALE_SINTLSYMBOL { 国际货币符号 }
LOCALE_SMONDECIMALSEP { 货币小数点分割符 }
LOCALE_SMONTHOUSANDSEP { 货币千位分割符 }
LOCALE_SMONGROUPING { monetary grouping }
LOCALE_ICURRDIGITS { # local monetary digits }
LOCALE_IINTLCURRDIGITS { # intl monetary digits }
LOCALE_ICURRENCY { positive currency mode }
LOCALE_INEGCURR { negative currency mode }
LOCALE_SDATE { 日期分割符 }
LOCALE_STIME { 时间分割符 }
LOCALE_SSHORTDATE { 短日期字符串 }
LOCALE_SLONGDATE { 长日期字符串 }
LOCALE_STIMEFORMAT { time format string }
LOCALE_IDATE { short date format ordering }
LOCALE_ILDATE { long date format ordering }
LOCALE_ITIME { time format specifier }
LOCALE_ITIMEMARKPOSN { time marker position }
LOCALE_ICENTURY { century format specifier (short date) }
LOCALE_ITLZERO { leading zeros in time field }
LOCALE_IDAYLZERO { leading zeros in day field (short date) }
LOCALE_IMONLZERO { leading zeros in month field (short date) }
LOCALE_S1159 { AM designator }
LOCALE_S2359 { PM designator }
LOCALE_ICALENDARTYPE { type of calendar specifier }
LOCALE_IOPTIONALCALENDAR { additional calendar types specifier }
LOCALE_IFIRSTDAYOFWEEK { first day of week specifier }
LOCALE_IFIRSTWEEKOFYEAR { first week of year specifier }
LOCALE_SDAYNAME1 { long name for Monday }
LOCALE_SDAYNAME2 { long name for Tuesday }
LOCALE_SDAYNAME3 { long name for Wednesday }
LOCALE_SDAYNAME4 { long name for Thursday }
LOCALE_SDAYNAME5 { long name for Friday }
LOCALE_SDAYNAME6 { long name for Saturday }
LOCALE_SDAYNAME7 { long name for Sunday }
LOCALE_SABBREVDAYNAME1 { 星期一的缩写 }
LOCALE_SABBREVDAYNAME2 { 星期二的缩写 }
LOCALE_SABBREVDAYNAME3 { 星期三的缩写 }
LOCALE_SABBREVDAYNAME4 { 星期四的缩写 }
LOCALE_SABBREVDAYNAME5 { 星期五的缩写 }
LOCALE_SABBREVDAYNAME6 { 星期六的缩写 }
LOCALE_SABBREVDAYNAME7 { 星期天的缩写 }
LOCALE_SMONTHNAME1 { long name for January }
LOCALE_SMONTHNAME2 { long name for February }
LOCALE_SMONTHNAME3 { long name for March }
LOCALE_SMONTHNAME4 { long name for April }
LOCALE_SMONTHNAME5 { long name for May }
LOCALE_SMONTHNAME6 { long name for June }
LOCALE_SMONTHNAME7 { long name for July }
LOCALE_SMONTHNAME8 { long name for August }
LOCALE_SMONTHNAME9 { long name for September }
LOCALE_SMONTHNAME10 { long name for October }
LOCALE_SMONTHNAME11 { long name for November }
LOCALE_SMONTHNAME12 { long name for December }
LOCALE_SMONTHNAME13 { long name for 13th month (if exists) }
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 { 十三月的缩写(如果有的话) }
LOCALE_SPOSITIVESIGN { 正号 }
LOCALE_SNEGATIVESIGN { 负号 }
LOCALE_IPOSSIGNPOSN { 正号位置 }
LOCALE_INEGSIGNPOSN { 负号位置 }
LOCALE_IPOSSYMPRECEDES { mon sym precedes pos amt }
LOCALE_IPOSSEPBYSPACE { mon sym sep by space from pos amt }
LOCALE_INEGSYMPRECEDES { mon sym precedes neg amt }
LOCALE_INEGSEPBYSPACE { mon sym sep by space from neg amt }
LOCALE_FONTSIGNATURE { font signature }
LOCALE_SISO639LANGNAME { ISO 缩写语言名称 }
LOCALE_SISO3166CTRYNAME { ISO 缩写国家名称 }
来源:https://www.cnblogs.com/guorongtao/p/11969774.html
最新修改时间于 2019.12.02
Delphi 获取系统的语言环境参数GetSystemDefaultLangID、VerLanguageName、GetLocaleInfo的更多相关文章
- Delphi 获取系统当前进程、窗口句柄、文件属性以及程序运行状态
uses TLHelp32,PsAPI;(1)显示进程列表: procedure TForm1.Button2Click(Sender: TObject); var lppe: TProcessEnt ...
- Delphi 获取系统时间后格式化输出
问题:客户现场程序运行提示时间格式不对导致的错误,原因是与开发环境及公司内部测试环境的日期格式不一致: 解决:统一强制转换: //引用单元:SysUtils //目的:实现跨环境兼容不同日期格式,如果 ...
- delphi 获取系统注册的文件图标
var Icon:TICON; Key : string; App : string; Index : Integer; begin FileName:=Edit6.Text; then begin ...
- XE3随笔21:系统默认语言与系统支持的语言列表
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, For ...
- Delphi编程获取系统当前进程、窗口句柄、文件属性以(转)
Delphi编程获取系统当前进程.窗口句柄.文件属性以及程序运行状态. uses TLHelp32,PsAPI; (1)显示进程列表:procedure TForm1.Button2Click(Sen ...
- 用Delphi获取当前系统时间
在开发应用程序时往往需要获取当前系统时间.尽管Y2K似乎已经平安过去,但在我们新开发的应用程序中还是要谨慎处理“时间”问题. 在<融会贯通--Delphi4.0实战技巧>(以下简称“该书” ...
- Linux C 语言 获取系统时间信息
比如获取当前年份: /* 获取当前系统时间 暂时不使用 int iyear = 0; int sysyear = 0; time_t now; ...
- Delphi获取当前系统时间(使用API函数GetSystemTime)
在开发应用程序时往往需要获取当前系统时间.尽管Y2K似乎已经平安过去,但在我们新开发的应用程序中还是要谨慎处理“时间”问题. 在<融会贯通--Delphi4.0实战技巧>(以下简称“该书” ...
- C语言 获取系统时间与睡眠时间函数
摘要: 以ms为单位,获取系统时间.睡眠或延迟时间函数的使用方法. #include<stdio.h> #include <time.h> #include <sys/t ...
随机推荐
- JavaScript的MD5加密
1.首先要到http://pajhome.org.uk/crypt/md5/下载js文件. 2.在页面文件中添加: <script type="text/javascript" ...
- axios拦截器的使用方法
很多时候我们需要在发送请求和响应数据的时候做一些页面处理,比如在请求服务器之前先判断以下用户是登录(通过token判断),或者设置请求头header,或者在请求到数据之前页面显示loading等等,还 ...
- 双十一高并发场景背后的数据库RDS技术揭秘
[战报]11月11日聚石塔(阿里云数据库RDS产品形态)峰值QPS突破X00w,Proxy 峰值QPS超过X00w. 双十一就要来了,全世界都为其疯狂,但是在双十一抢购中经常会出现几万人抢一个红包或者 ...
- HDU 6038 Function —— 2017 Multi-University Training 1
Function Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total ...
- 【Elasticsearch】ElasticSearch基本查询
学习elasticsearch查询用法的时候,发现这篇文章写得很详细,为以后方便查看,就直接搬过来了,原文链接在下面. 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附 ...
- 【Java】maven打包源码、依赖插件
<plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactI ...
- truncate与delete删除数据的区别
- 全面质量管理体系运转的基本方法 PDCA
PDCA管理循环 PDCA循环作为全面质量管理体系运转的基本方法,其实是需要搜集大量数据资料,并综合运用各种管理技术和方法.全面质量管理活动的全部过程,就是质量计划的制订和组织实现的过程,这个过程就是 ...
- Oracle or Question Solve(二)
数据库常用语句和函数 ----update update()函数主要注意的是后面的where限制条件--例子:update tab_a a set a.v1 = (select b.v1 from t ...
- [TensorFlow 2] [Keras] fit()、fit_generator() 和 train_on_batch() 分析与应用
前言 是的,除了水报错文,我也来写点其他的.本文主要介绍Keras中以下三个函数的用法: fit()fit_generator()train_on_batch()当然,与上述三个函数相似的evalua ...