0

可能重复:
如何使用 vb6 检查当前键盘的语言?

如何始终使用 VB 6 检查当前键盘的语言?

Private Sub Timer1_Timer() 
IF (language = EN) Then 
label1.caption = EN 
else ...... 
End IF
End Sub
4

1 回答 1

1

使用 WMI 可以很容易地完成:

功能

Public Function GetPropValue(PropName$) As String
    Dim result$
    result = ""
    Set WMIObjectSet = GetObject("winmgmts:\\.\root\CIMV2").ExecQuery("SELECT *FROM Win32_OperatingSystem")
    For Each WMIObject In WMIObjectSet
        If result <> "" Then
            Exit For
        Else
            For Each WMIProperty In WMIObject.Properties_
                If WMIProperty.Name = PropName Then
                    result = WMIProperty.Value
                    Exit For
                End If
            Next
        End If
    Next
    GetPropValue = result
End Function

可以这样称呼:

GetPropValue("OSLanguage")
1033

现在它必须使用代码页号检查值。有关详细信息,请访问此处

或者

Private Declare Function GetThreadLocale Lib "kernel32" () As Long

Private Sub Timer1_Timer() 
IF (GetThreadLocale = 1033) Then 
    label1.caption="EN"
else
    'check other values
End IF
End Sub
于 2012-05-22T13:47:55.260 回答