“HKEY_CURRENT_USER\Control Panel\International”下的“sShortDate”值键设为“MM-dd-yyyy”VB操作注册表:
http://www.sqreg.com/file/vb/reg_01.htm
http://www.sqreg.com/file/vb/reg_02.htm
http://www.sqreg.com/file/vb/reg_03.htm
http://www.sqreg.com/file/vb/reg_04.htm
http://www.sqreg.com/file/vb/reg_05.htm
http://www.sqreg.com/file/vb/reg_06.htm
http://www.sqreg.com/file/vb/reg_07.htm
http://www.sqreg.com/file/vb/reg_01.htm
http://www.sqreg.com/file/vb/reg_02.htm
http://www.sqreg.com/file/vb/reg_03.htm
http://www.sqreg.com/file/vb/reg_04.htm
http://www.sqreg.com/file/vb/reg_05.htm
http://www.sqreg.com/file/vb/reg_06.htm
http://www.sqreg.com/file/vb/reg_07.htm
Private Sub Form_Load()
Dim TempStr As String
TempStr="MM-dd-yyyy"
If RegSetStr(HKEY_CURRENT_USER, "Control Panel\International", sShortDate, TempStr) Then
'不成功
Else
'成功
End If
End Sub'在模块中:
Option Explicit
'=== API =======================================
'-=- Reg -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Public Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long'--- Const -------------------------------------
Public Const KEY_CREATE_LINK = &H20
Public Const KEY_CREATE_SUB_KEY = &H4
Public Const KEY_ENUMERATE_SUB_KEYS = &H8
Public Const KEY_NOTIFY = &H10
Public Const KEY_QUERY_VALUE = &H1
Public Const KEY_SET_VALUE = &H2
'Public Const KEY_READ = ((STANDARD_RIGHTS_READ Or KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY) And (Not SYNCHRONIZE))
'Public Const KEY_WRITE = ((STANDARD_RIGHTS_WRITE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY) And (Not SYNCHRONIZE))
'Public Const KEY_EXECUTE = (KEY_READ)
Public Const STANDARD_RIGHTS_ALL = &H1F0000
Public Const SYNCHRONIZE = &H100000
Public Const KEY_ALL_ACCESS = ((STANDARD_RIGHTS_ALL Or KEY_QUERY_VALUE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY Or KEY_CREATE_LINK) And (Not SYNCHRONIZE))Public Const REG_SZ = 1Public Const HKEY_CLASSES_ROOT = &H80000000
Public Const HKEY_CURRENT_CONFIG = &H80000005
Public Const HKEY_CURRENT_USER = &H80000001
Public Const HKEY_DYN_DATA = &H80000006
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_PERFORMANCE_DATA = &H80000004
Public Const HKEY_USERS = &H80000003Public Function RegGetStr(MainKey As Long, SubKey As String, KeyName As String, OutData As String) As Long
Dim hKey As Long
Dim TempStr As String
Dim StrLen As Long
Dim KeyType As Long
Dim Rc As Long
StrLen = 260
TempStr = String$(StrLen, Chr$(0))
Rc = RegOpenKeyEx(MainKey, SubKey, 0, KEY_ALL_ACCESS, hKey)
'Debug.Print "Load1:" & Rc
If Rc = 0 Then
Rc = RegQueryValueEx(hKey, KeyName, 0, KeyType, ByVal TempStr, StrLen)
If KeyType <> REG_SZ Then
RegGetStr = -1
Exit Function
End If
'Debug.Print "Load2: " & Rc
If Rc = 0 Then
OutData = Left$(TempStr, StrLen)
Else
RegGetStr = Rc
End If
RegCloseKey hKey
Else
RegGetStr = Rc
End If
End FunctionPublic Function RegSetStr(MainKey As Long, SubKey As String, KeyName As String, SetData As String) As Long
Dim hKey As Long
Dim Rc As Long
Rc = RegOpenKeyEx(MainKey, SubKey, 0, KEY_ALL_ACCESS, hKey)
If Rc = 0 Then
Rc = RegSetValueEx(hKey, KeyName, 0, REG_SZ, ByVal SetData, Len(SetData))
If Rc = 0 Then
Else
RegSetStr = Rc
End If
RegCloseKey hKey
Else
RegSetStr = Rc
End If
End Function
Private Sub Form_Load()
Dim TempStr As String
TempStr="MM-dd-yyyy"
If RegSetStr(HKEY_CURRENT_USER, "Control Panel\International", "sShortDate", TempStr) Then
'不成功
Else
'成功
End If
End Sub
再次谢谢你一直回答我的问题
散分