Public Declare Function GetUserDefaultLCID Lib "kernel32" () As LongPrivate Sub Command1_Click() Dim g_ComputerLanguageAs Long g_ComputerLanguage = GetUserDefaultLangID If g_ComputerLanguage = 2052 Then Label1.Caption = "The Language ID is Chinese(Simplified)" ElseIf g_ComputerLanguage = 1028 Then Label1.Caption = "The Language ID is Chinese(Simplified)" ElseIf g_ComputerLanguage = 1033 Then Label1.Caption = "The Language ID English" End If End Sub
楼主:不好意思,那个API写错了。应该是 Public Declare Function GetUserDefaultLangID Lib "kernel32" () As IntegerPublic Declare Function GetUserDefaultLCID Lib "kernel32" () As Long这个是得到地区的。
Private Declare Function GetSystemDefaultLCID Lib "kernel32" () As LongPrivate Sub Command1_Click() MsgBox GetOsType, vbOKOnly, "提示" End SubFunction GetOsType() As String Dim ret As String Select Case Hex(GetSystemDefaultLCID) Case 804: ret = "中文简体(大陆)" Case 404: ret = "中文繁体(台湾)" Case 409: ret = "英文" Case Else: ret = "其它语言系统" End Select GetOsType = ret End Function
Public Const LANG_CHINESE& = &H4 Public Const LANG_BULGARIAN& = &H2 Public Const LANG_CROATIAN& = &H1A Public Const LANG_CZECH& = &H5 Public Const LANG_DANISH& = &H6 Public Const LANG_DUTCH& = &H13 Public Const LANG_ENGLISH& = &H9 Public Const LANG_FINNISH& = &HB Public Const LANG_FRENCH& = &HC Public Const LANG_GERMAN& = &H7 Public Const LANG_GREEK& = &H8 Public Const LANG_HUNGARIAN& = &HE Public Const LANG_ICELANDIC& = &HF Public Const LANG_ITALIAN& = &H10 Public Const LANG_JAPANESE& = &H11 Public Const LANG_KOREAN& = &H12 Public Const LANG_NEUTRAL& = &H0 Public Const LANG_NORWEGIAN& = &H14 Public Const LANG_POLISH& = &H15 Public Const LANG_PORTUGUESE& = &H16 Public Const LANG_ROMANIAN& = &H18 Public Const LANG_RUSSIAN& = &H19 Public Const LANG_SLOVAK& = &H1B Public Const LANG_SLOVENIAN& = &H24 Public Const LANG_SPANISH& = &HA Public Const LANG_SWEDISH& = &H1D Public Const LANG_TURKISH& = &H1F '函数声明 Public Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
'例子代码 Dim lngLCID As Long Dim lngLangID As Long
lngLCID = GetSystemDefaultLCID '取低10位 lngLangID = (lngLCID And (Not &HFC00))
Select Case lngLangID Case LANG_CHINESE MsgBox "您使用的是中文Windows", vbInformation, "信息" case LANG_ENGLISH MsgBox "您使用的英文Windows",vbInformation,"信息" End Select
Declare Function GetSystemDefaultLangID Lib "kernel32" () As Integer
Dim g_ComputerLanguageAs Long
g_ComputerLanguage = GetUserDefaultLangID
If g_ComputerLanguage = 2052 Then
Label1.Caption = "The Language ID is Chinese(Simplified)"
ElseIf g_ComputerLanguage = 1028 Then
Label1.Caption = "The Language ID is Chinese(Simplified)"
ElseIf g_ComputerLanguage = 1033 Then
Label1.Caption = "The Language ID English"
End If
End Sub
Public Declare Function GetUserDefaultLangID Lib "kernel32" () As IntegerPublic Declare Function GetUserDefaultLCID Lib "kernel32" () As Long这个是得到地区的。
MsgBox GetOsType, vbOKOnly, "提示"
End SubFunction GetOsType() As String
Dim ret As String
Select Case Hex(GetSystemDefaultLCID)
Case 804:
ret = "中文简体(大陆)"
Case 404:
ret = "中文繁体(台湾)"
Case 409:
ret = "英文"
Case Else:
ret = "其它语言系统"
End Select
GetOsType = ret
End Function
Public Const LANG_BULGARIAN& = &H2
Public Const LANG_CROATIAN& = &H1A
Public Const LANG_CZECH& = &H5
Public Const LANG_DANISH& = &H6
Public Const LANG_DUTCH& = &H13
Public Const LANG_ENGLISH& = &H9
Public Const LANG_FINNISH& = &HB
Public Const LANG_FRENCH& = &HC
Public Const LANG_GERMAN& = &H7
Public Const LANG_GREEK& = &H8
Public Const LANG_HUNGARIAN& = &HE
Public Const LANG_ICELANDIC& = &HF
Public Const LANG_ITALIAN& = &H10
Public Const LANG_JAPANESE& = &H11
Public Const LANG_KOREAN& = &H12
Public Const LANG_NEUTRAL& = &H0
Public Const LANG_NORWEGIAN& = &H14
Public Const LANG_POLISH& = &H15
Public Const LANG_PORTUGUESE& = &H16
Public Const LANG_ROMANIAN& = &H18
Public Const LANG_RUSSIAN& = &H19
Public Const LANG_SLOVAK& = &H1B
Public Const LANG_SLOVENIAN& = &H24
Public Const LANG_SPANISH& = &HA
Public Const LANG_SWEDISH& = &H1D
Public Const LANG_TURKISH& = &H1F
'函数声明
Public Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
'例子代码
Dim lngLCID As Long
Dim lngLangID As Long
lngLCID = GetSystemDefaultLCID
'取低10位
lngLangID = (lngLCID And (Not &HFC00))
Select Case lngLangID
Case LANG_CHINESE
MsgBox "您使用的是中文Windows", vbInformation, "信息"
case LANG_ENGLISH
MsgBox "您使用的英文Windows",vbInformation,"信息"
End Select