韩剧1988免费观看全集_久久影视三级福利片_亚洲视频在线观看免费_在线观看欧美日韩_国产亚洲激情在线_亚洲精品美女久久久_欧美国产日韩一区二区在线观看_91在线观看免费高清完整版在线观看_日韩av免费看_国产又爽又黄的激情精品视频_琪琪亚洲精品午夜在线_欧美性猛xxx_不卡毛片在线看_国产亚洲日本欧美韩国_91国内在线视频_精品国产福利视频

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

用API更改注冊(cè)表的完整模塊

用API更改注冊(cè)表的完整模塊

更新時(shí)間:2022-06-06 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

有些老掉牙了,這是很久以前寫的了,覺得功能已經(jīng)比較完善了。

下載地址:
http://www.wowor.net/bbs/up/files/2004403_mregistry.zip



這是我用這個(gè)模塊寫過的一個(gè)軟件:

注冊(cè)表大師 2.0

http://www.onlinedown.net/soft/16780.htm



標(biāo)準(zhǔn)模塊代碼:
'**************************************************************************************************************
'* 本模塊提供了一些對(duì)注冊(cè)表進(jìn)行操作的函數(shù)
'* 警告: 操作注冊(cè)表是非常危險(xiǎn)的, 使用本模塊中的任何函數(shù)都要慎重!!!
'*
'* 版權(quán): LPP軟件工作室
'* 作者: 盧培培
'**************************************************************************************************************

Option Explicit

Option Compare Text

'---------------------------------------------------------------
'- 注冊(cè)表 API 聲明...
'---------------------------------------------------------------
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, phkResult As Long, lpdwDisposition As Long) As Long
Private Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Private 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
Private 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
Private Declare Function RegRestoreKey Lib "advapi32.dll" Alias "RegRestoreKeyA" (ByVal hKey As Long, ByVal lpFile As String, ByVal dwFlags As Long) As Long
Private Declare Function RegSaveKey Lib "advapi32.dll" Alias "RegSaveKeyA" (ByVal hKey As Long, ByVal lpFile As String, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long
Private 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
Private Declare Function RegQueryInfoKey Lib "advapi32.dll" Alias "RegQueryInfoKeyA" (ByVal hKey As Long, ByVal lpClass As String, lpcbClass As Long, ByVal lpReserved As Long, lpcSubKeys As Long, lpcbMaxSubKeyLen As Long, lpcbMaxClassLen As Long, lpcValues As Long, lpcbMaxValueNameLen As Long, lpcbMaxValueLen As Long, lpcbSecurityDescriptor As Long, lpftLastWriteTime As FILETIME) As Long
Private Declare Function RegEnumValue Lib "advapi32.dll" Alias "RegEnumValueA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, lpcbValueName As Long, ByVal lpReserved As Long, lpType As Long, lpData As Byte, lpcbData As Long) As Long
Private Declare Function RegEnumKeyEx Lib "advapi32.dll" Alias "RegEnumKeyExA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpName As String, lpcbName As Long, ByVal lpReserved As Long, ByVal lpClass As String, lpcbClass As Long, lpftLastWriteTime As FILETIME) As Long

Private Declare Function AdjustTokenPrivileges Lib "advapi32.dll" (ByVal TokenHandle As Long, ByVal DisableAllPriv As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) As Long 'Used to adjust your program's security privileges, can't restore without it!
Private Declare Function LookupPrivilegeValue Lib "advapi32.dll" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As Any, ByVal lpName As String, lpLuid As LUID) As Long 'Returns a valid LUID which is important when making security changes in NT.
Private Declare Function OpenProcessToken Lib "advapi32.dll" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long

'---------------------------------------------------------------
'- 注冊(cè)表 Api 常數(shù)...
'---------------------------------------------------------------
' 注冊(cè)表創(chuàng)建類型值...
Const REG_OPTION_NON_VOLATILE = 0 ' 當(dāng)系統(tǒng)重新啟動(dòng)時(shí),關(guān)鍵字被保留

' 注冊(cè)表關(guān)鍵字安全選項(xiàng)...
Const READ_CONTROL = &H20000
Const KEY_QUERY_VALUE = &H1
Const KEY_SET_VALUE = &H2
Const KEY_CREATE_SUB_KEY = &H4
Const KEY_ENUMERATE_SUB_KEYS = &H8
Const KEY_NOTIFY = &H10
Const KEY_CREATE_LINK = &H20
Const KEY_READ = KEY_QUERY_VALUE + KEY_ENUMERATE_SUB_KEYS + KEY_NOTIFY + READ_CONTROL
Const KEY_WRITE = KEY_SET_VALUE + KEY_CREATE_SUB_KEY + READ_CONTROL
Const KEY_EXECUTE = KEY_READ
Const KEY_ALL_ACCESS = KEY_QUERY_VALUE + KEY_SET_VALUE + KEY_CREATE_SUB_KEY + KEY_ENUMERATE_SUB_KEYS + KEY_NOTIFY + KEY_CREATE_LINK + READ_CONTROL

' 返回值...
Const ERROR_NONE = 0
Const ERROR_BADKEY = 2
Const ERROR_ACCESS_DENIED = 8
Const ERROR_SUCCESS = 0

' 有關(guān)導(dǎo)入/導(dǎo)出的常量
Const REG_FORCE_RESTORE As Long = 8&
Const TOKEN_QUERY As Long = &H8&
Const TOKEN_ADJUST_PRIVILEGES As Long = &H20&
Const SE_PRIVILEGE_ENABLED As Long = &H2
Const SE_RESTORE_NAME = "SeRestorePrivilege"
Const SE_BACKUP_NAME = "SeBackupPrivilege"

'---------------------------------------------------------------
'- 注冊(cè)表類型...
'---------------------------------------------------------------
Private Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Boolean
End Type

Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type

Private Type LUID
lowpart As Long
highpart As Long
End Type

Private Type LUID_AND_ATTRIBUTES
pLuid As LUID
Attributes As Long
End Type

Private Type TOKEN_PRIVILEGES
PrivilegeCount As Long
Privileges As LUID_AND_ATTRIBUTES
End Type

'---------------------------------------------------------------
'- 自定義枚舉類型...
'---------------------------------------------------------------
' 注冊(cè)表數(shù)據(jù)類型...
Public Enum ValueType
REG_SZ = 1 ' 字符串值
REG_EXPAND_SZ = 2 ' 可擴(kuò)充字符串值
REG_BINARY = 3 ' 二進(jìn)制值
REG_DWORD = 4 ' DWORD值
REG_MULTI_SZ = 7 ' 多字符串值
End Enum

' 注冊(cè)表關(guān)鍵字根類型...
Public Enum KeyRoot
HKEY_CLASSES_ROOT = &H80000000
HKEY_CURRENT_USER = &H80000001
HKEY_LOCAL_MACHINE = &H80000002
HKEY_USERS = &H80000003
HKEY_PERFORMANCE_DATA = &H80000004
HKEY_CURRENT_CONFIG = &H80000005
HKEY_DYN_DATA = &H80000006
End Enum

Private hKey As Long ' 注冊(cè)表打開項(xiàng)的句柄
Private i As Long, j As Long ' 循環(huán)變量
Private Success As Long ' API函數(shù)的返回值, 判斷函數(shù)調(diào)用是否成功

'-------------------------------------------------------------------------------------------------------------
'- 新建注冊(cè)表關(guān)鍵字并設(shè)置注冊(cè)表關(guān)鍵字的值...
'- 如果 ValueName 和 Value 都缺省, 則只新建 KeyName 空項(xiàng), 無子鍵...
'- 如果只缺省 ValueName 則將設(shè)置指定 KeyName 的默認(rèn)值
'- 參數(shù)說明: KeyRoot--根類型, KeyName--子項(xiàng)名稱, ValueName--值項(xiàng)名稱, Value--值項(xiàng)數(shù)據(jù), ValueType--值項(xiàng)類型
'-------------------------------------------------------------------------------------------------------------
Public Function SetKeyValue(KeyRoot As KeyRoot, KeyName As String, Optional ValueName As String, Optional Value As Variant = "", Optional ValueType As ValueType = REG_SZ) As Boolean
Dim lpAttr As SECURITY_ATTRIBUTES ' 注冊(cè)表安全類型
lpAttr.nLength = 50 ' 設(shè)置安全屬性為缺省值...
lpAttr.lpSecurityDescriptor = 0 ' ...
lpAttr.bInheritHandle = True ' ...

' 新建注冊(cè)表關(guān)鍵字...
Success = RegCreateKeyEx(KeyRoot, KeyName, 0, ValueType, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, lpAttr, hKey, 0)
If Success <> ERROR_SUCCESS Then SetKeyValue = False: RegCloseKey hKey: Exit Function

' 設(shè)置注冊(cè)表關(guān)鍵字的值...
If IsMissing(ValueName) = False Then
Select Case ValueType
Case REG_SZ, REG_EXPAND_SZ, REG_MULTI_SZ
Success = RegSetValueEx(hKey, ValueName, 0, ValueType, ByVal CStr(Value), LenB(StrConv(Value, vbFromUnicode)) + 1)
Case REG_DWORD
If CDbl(Value) <= 4294967295# And CDbl(Value) >= 0 Then
Dim sValue As String
sValue = DoubleToHex(Value)
Dim dValue(3) As Byte
dValue(0) = Format("&h" & Mid(sValue, 7, 2))
dValue(1) = Format("&h" & Mid(sValue, 5, 2))
dValue(2) = Format("&h" & Mid(sValue, 3, 2))
dValue(3) = Format("&h" & Mid(sValue, 1, 2))
Success = RegSetValueEx(hKey, ValueName, 0, ValueType, dValue(0), 4)
Else
Success = ERROR_BADKEY
End If
Case REG_BINARY
On Error Resume Next
Success = 1 ' 假設(shè)調(diào)用API不成功(成功返回0)
ReDim tmpValue(UBound(Value)) As Byte
For i = 0 To UBound(tmpValue)
tmpValue(i) = Value(i)
Next i
Success = RegSetValueEx(hKey, ValueName, 0, ValueType, tmpValue(0), UBound(Value) + 1)
End Select
End If
If Success <> ERROR_SUCCESS Then SetKeyValue = False: RegCloseKey hKey: Exit Function

' 關(guān)閉注冊(cè)表關(guān)鍵字...
RegCloseKey hKey
SetKeyValue = True ' 返回函數(shù)值
End Function

'-------------------------------------------------------------------------------------------------------------
'- 獲得已存在的注冊(cè)表關(guān)鍵字的值...
'- 如果 ValueName="" 則返回 KeyName 項(xiàng)的默認(rèn)值...
'- 如果指定的注冊(cè)表關(guān)鍵字不存在, 則返回空串...
'- 參數(shù)說明: KeyRoot--根類型, KeyName--子項(xiàng)名稱, ValueName--值項(xiàng)名稱, ValueType--值項(xiàng)類型
'-------------------------------------------------------------------------------------------------------------
Public Function GetKeyValue(KeyRoot As KeyRoot, KeyName As String, ValueName As String, Optional ValueType As Long) As String
Dim TempValue As String ' 注冊(cè)表關(guān)鍵字的臨時(shí)值
Dim Value As String ' 注冊(cè)表關(guān)鍵字的值
Dim ValueSize As Long ' 注冊(cè)表關(guān)鍵字的值的實(shí)際長(zhǎng)度
TempValue = Space(1024) ' 存儲(chǔ)注冊(cè)表關(guān)鍵字的臨時(shí)值的緩沖區(qū)
ValueSize = 1024 ' 設(shè)置注冊(cè)表關(guān)鍵字的值的默認(rèn)長(zhǎng)度

' 打開一個(gè)已存在的注冊(cè)表關(guān)鍵字...
RegOpenKeyEx KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey

' 獲得已打開的注冊(cè)表關(guān)鍵字的值...
RegQueryValueEx hKey, ValueName, 0, ValueType, ByVal TempValue, ValueSize

' 返回注冊(cè)表關(guān)鍵字的的值...
Select Case ValueType ' 通過判斷關(guān)鍵字的類型, 進(jìn)行處理
Case REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ
TempValue = Left$(TempValue, ValueSize - 1) ' 去掉TempValue尾部空格
Value = TempValue
Case REG_DWORD
ReDim dValue(3) As Byte
RegQueryValueEx hKey, ValueName, 0, REG_DWORD, dValue(0), ValueSize
For i = 3 To 0 Step -1
Value = Value + String(2 - Len(Hex(dValue(i))), "0") + Hex(dValue(i)) ' 生成長(zhǎng)度為8的十六進(jìn)制字符串
Next i
If CDbl("&H" & Value) < 0 Then ' 將十六進(jìn)制的 Value 轉(zhuǎn)換為十進(jìn)制
Value = 2 ^ 32 + CDbl("&H" & Value)
Else
Value = CDbl("&H" & Value)
End If
Case REG_BINARY
If ValueSize > 0 Then
ReDim bValue(ValueSize - 1) As Byte ' 存儲(chǔ) REG_BINARY 值的臨時(shí)數(shù)組
RegQueryValueEx hKey, ValueName, 0, REG_BINARY, bValue(0), ValueSize
For i = 0 To ValueSize - 1
Value = Value + String(2 - Len(Hex(bValue(i))), "0") + Hex(bValue(i)) + " " ' 將數(shù)組轉(zhuǎn)換成字符串
Next i
End If
End Select

' 關(guān)閉注冊(cè)表關(guān)鍵字...
RegCloseKey hKey
GetKeyValue = Trim(Value) ' 返回函數(shù)值
End Function

'-------------------------------------------------------------------------------------------------------------
'- 刪除已存在的注冊(cè)表關(guān)鍵字的值...
'- 如果指定的注冊(cè)表關(guān)鍵字不存在, 則不做任何操作...
'- 參數(shù)說明: KeyRoot--根類型, KeyName--子項(xiàng)名稱, ValueName--值項(xiàng)名稱
'-------------------------------------------------------------------------------------------------------------
Public Function DeleteKey(KeyRoot As KeyRoot, KeyName As String, Optional ValueName As String) As Boolean
Dim tmpKeyName As String ' 注冊(cè)表關(guān)鍵字的臨時(shí)子項(xiàng)名稱
Dim tmpValueName As String ' 注冊(cè)表關(guān)鍵字的臨時(shí)子鍵名稱

' 打開一個(gè)已存在的注冊(cè)表關(guān)鍵字...
Success = RegOpenKeyEx(KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey)
If Success <> ERROR_SUCCESS Then DeleteKey = False: RegCloseKey hKey: Exit Function

' 刪除已打開的注冊(cè)表關(guān)鍵字...
tmpKeyName = ""
tmpValueName = KeyName
If ValueName = "" Then ' 判斷ValueName是否缺省, 如缺省作相應(yīng)處理
If InStrRev(KeyName, "\") > 1 Then
tmpValueName = Right(KeyName, InStrRev(KeyName, "\") + 1)
tmpKeyName = Left(KeyName, InStrRev(KeyName, "\") - 1)
End If
Success = RegOpenKeyEx(KeyRoot, tmpKeyName, 0, KEY_ALL_ACCESS, hKey)
Success = RegDeleteKey(hKey, tmpValueName)
Else
Success = RegDeleteValue(hKey, ValueName)
End If
If Success <> ERROR_SUCCESS Then DeleteKey = False: RegCloseKey hKey: Exit Function

' 關(guān)閉注冊(cè)表關(guān)鍵字...
RegCloseKey hKey
DeleteKey = True ' 返回函數(shù)值
End Function

'-------------------------------------------------------------------------------------------------------------
'- 獲得注冊(cè)表關(guān)鍵字的一些信息...
'- SubKeyName() 注冊(cè)表關(guān)鍵字的所有子項(xiàng)的名稱(注意:最小下標(biāo)為0)
'- ValueName() 注冊(cè)表關(guān)鍵字的所有子鍵的名稱(注意:最小下標(biāo)為0)
'- ValueType() 注冊(cè)表關(guān)鍵字的所有子鍵的類型(注意:最小下標(biāo)為0)
'- CountKey 注冊(cè)表關(guān)鍵字的子項(xiàng)數(shù)量
'- CountValue 注冊(cè)表關(guān)鍵字的子鍵數(shù)量
'- MaxLenKey 注冊(cè)表關(guān)鍵字的子項(xiàng)名稱的最大長(zhǎng)度
'- MaxLenValue 注冊(cè)表關(guān)鍵字的子鍵名稱的最大長(zhǎng)度
'-------------------------------------------------------------------------------------------------------------
Public Function GetKeyInfo(KeyRoot As KeyRoot, KeyName As String, SubKeyName() As String, ValueName() As String, ValueType() As ValueType, Optional CountKey As Long, Optional CountValue As Long, Optional MaxLenKey As Long, Optional MaxLenValue As Long) As Boolean
Dim f As FILETIME
Dim l As Long, s As String

' 打開一個(gè)已存在的注冊(cè)表關(guān)鍵字...
Success = RegOpenKeyEx(KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey)
If Success <> ERROR_SUCCESS Then GetKeyInfo = False: RegCloseKey hKey: Exit Function

' 獲得一個(gè)已打開的注冊(cè)表關(guān)鍵字的信息...
Success = RegQueryInfoKey(hKey, vbNullString, ByVal 0&, ByVal 0&, CountKey, MaxLenKey, ByVal 0&, CountValue, MaxLenValue, ByVal 0&, ByVal 0&, f)
If Success <> ERROR_SUCCESS Then GetKeyInfo = False: RegCloseKey hKey: Exit Function

If CountKey <> 0 Then
ReDim SubKeyName(CountKey - 1) As String ' 重新定義數(shù)組, 使用數(shù)組大小與注冊(cè)表關(guān)鍵字的子項(xiàng)數(shù)量匹配
For i = 0 To CountKey - 1
SubKeyName(i) = Space(255)
l = 255
RegEnumKeyEx hKey, i, ByVal SubKeyName(i), l, 0, vbNullString, ByVal 0&, f
SubKeyName(i) = Left(SubKeyName(i), l)
Next i

' 下面的二重循環(huán)對(duì)字符串?dāng)?shù)組進(jìn)行冒泡排序
For i = 0 To UBound(SubKeyName)
For j = i + 1 To UBound(SubKeyName)
If SubKeyName(i) > SubKeyName(j) Then
s = SubKeyName(i)
SubKeyName(i) = SubKeyName(j)
SubKeyName(j) = s
End If
Next j
Next i
End If

If CountValue <> 0 Then
ReDim ValueName(CountValue - 1) As String ' 重新定義數(shù)組, 使用數(shù)組大小與注冊(cè)表關(guān)鍵字的子鍵數(shù)量匹配
ReDim ValueType(CountValue - 1) As Long ' 重新定義數(shù)組, 使用數(shù)組大小與注冊(cè)表關(guān)鍵字的子鍵數(shù)量匹配
For i = 0 To CountValue - 1
ValueName(i) = Space(255)
l = 255
RegEnumValue hKey, i, ByVal ValueName(i), l, 0, ValueType(i), ByVal 0&, ByVal 0&
ValueName(i) = Left(ValueName(i), l)
Next i

' 下面的二重循環(huán)對(duì)字符串?dāng)?shù)組進(jìn)行冒泡排序
For i = 0 To UBound(ValueName)
For j = i + 1 To UBound(ValueName)
If ValueName(i) > ValueName(j) Then
s = ValueName(i)
ValueName(i) = ValueName(j)
ValueName(j) = s
End If
Next j
Next i
End If

' 關(guān)閉注冊(cè)表關(guān)鍵字...
RegCloseKey hKey
GetKeyInfo = True ' 返回函數(shù)值
End Function

'-------------------------------------------------------------------------------------------------------------
'- 導(dǎo)出注冊(cè)表關(guān)鍵字的值
'- 參數(shù)說明: KeyRoot--根類型, KeyName--子項(xiàng)名稱, FileName--導(dǎo)出的文件路徑及文件名(原始數(shù)據(jù)庫格式)
'-------------------------------------------------------------------------------------------------------------
Public Function SaveKey(KeyRoot As KeyRoot, KeyName As String, FileName As String) As Boolean
On Error Resume Next

Dim lpAttr As SECURITY_ATTRIBUTES ' 注冊(cè)表安全類型
lpAttr.nLength = 50 ' 設(shè)置安全屬性為缺省值...
lpAttr.lpSecurityDescriptor = 0 ' ...
lpAttr.bInheritHandle = True ' ...

If EnablePrivilege(SE_BACKUP_NAME) = False Then
SaveKey = False
Exit Function
End If

Success = RegOpenKeyEx(KeyRoot, KeyName, 0&, KEY_ALL_ACCESS, hKey)
If Success <> 0 Then
SaveKey = False
Success = RegCloseKey(hKey)
Exit Function
End If

Success = RegSaveKey(hKey, FileName, lpAttr)
If Success = 0 Then SaveKey = True Else SaveKey = False

Success = RegCloseKey(hKey)
End Function

'-------------------------------------------------------------------------------------------------------------
'- 導(dǎo)入注冊(cè)表關(guān)鍵字的值
'- 參數(shù)說明: KeyRoot--根類型, KeyName--子項(xiàng)名稱, FileName--導(dǎo)入的文件路徑及文件名(原始數(shù)據(jù)庫格式)
'-------------------------------------------------------------------------------------------------------------
Public Function RestoreKey(KeyRoot As KeyRoot, KeyName As String, FileName As String) As Boolean
On Error Resume Next

If EnablePrivilege(SE_RESTORE_NAME) = False Then
RestoreKey = False
Exit Function
End If

Success = RegOpenKeyEx(KeyRoot, KeyName, 0&, KEY_ALL_ACCESS, hKey)
If Success <> 0 Then
RestoreKey = False
Success = RegCloseKey(hKey)
Exit Function
End If

Success = RegRestoreKey(hKey, FileName, REG_FORCE_RESTORE)
If Success = 0 Then RestoreKey = True Else RestoreKey = False

Success = RegCloseKey(hKey)
End Function

'-------------------------------------------------------------------------------------------------------------
'- 使注冊(cè)表允許導(dǎo)入/導(dǎo)出
'-------------------------------------------------------------------------------------------------------------
Private Function EnablePrivilege(seName As String) As Boolean
On Error Resume Next

Dim p_lngRtn As Long
Dim p_lngToken As Long
Dim p_lngBufferLen As Long
Dim p_typLUID As LUID
Dim p_typTokenPriv As TOKEN_PRIVILEGES
Dim p_typPrevTokenPriv As TOKEN_PRIVILEGES

p_lngRtn = OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY, p_lngToken)
If p_lngRtn = 0 Then
EnablePrivilege = False
Exit Function
End If
If Err.LastDllError <> 0 Then
EnablePrivilege = False
Exit Function
End If

p_lngRtn = LookupPrivilegeValue(0&, seName, p_typLUID)
If p_lngRtn = 0 Then
EnablePrivilege = False
Exit Function
End If

p_typTokenPriv.PrivilegeCount = 1
p_typTokenPriv.Privileges.Attributes = SE_PRIVILEGE_ENABLED
p_typTokenPriv.Privileges.pLuid = p_typLUID

EnablePrivilege = (AdjustTokenPrivileges(p_lngToken, False, p_typTokenPriv, Len(p_typPrevTokenPriv), p_typPrevTokenPriv, p_lngBufferLen) <> 0)
End Function

'-------------------------------------------------------------------------------------------------------------
'- 將 Double 型( 限制在 0--2^32-1 )的數(shù)字轉(zhuǎn)換為十六進(jìn)制并在前面補(bǔ)零
'- 參數(shù)說明: Number--要轉(zhuǎn)換的 Double 型數(shù)字
'-------------------------------------------------------------------------------------------------------------
Private Function DoubleToHex(ByVal Number As Double) As String
Dim strHex As String
strHex = Space(8)
For i = 1 To 8
Select Case Number - Int(Number / 16) * 16
Case 10
Mid(strHex, 9 - i, 1) = "A"
Case 11
Mid(strHex, 9 - i, 1) = "B"
Case 12
Mid(strHex, 9 - i, 1) = "C"
Case 13
Mid(strHex, 9 - i, 1) = "D"
Case 14
Mid(strHex, 9 - i, 1) = "E"
Case 15
Mid(strHex, 9 - i, 1) = "F"
Case Else
Mid(strHex, 9 - i, 1) = CStr(Number - Int(Number / 16) * 16)
End Select
Number = Int(Number / 16)
Next i
DoubleToHex = strHex
End Function



溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
国内外成人免费在线视频| 欧美亚洲另类视频| 午夜小视频免费| 欧美精品一区二区在线观看| 成人日韩av在线| 亚洲成人综合网站| 亚洲 欧美 日韩 国产综合 在线| 精品二区在线观看| 激情图片在线观看高清国产| 久草视频一区二区| 久久99精品国产.久久久久久| 久草免费在线观看| 成人午夜剧场视频网站| aaa欧美日韩| 免费观看亚洲视频大全| 国产夜色精品一区二区av| 成年网站在线播放| 国产女人伦码一区二区三区不卡| 久久人人爽人人片| 亚洲美女av在线播放| 在线观看h网址| 大片免费在线观看| 午夜婷婷国产麻豆精品| 日韩在线不卡一区| 99精品老司机免费视频| 日韩一区免费观看| 国产精品自产自拍| 不卡的av中国片| 一道在线中文一区二区三区| 亚洲一区精品电影| 日本毛片在线观看| 欧美大片在线观看一区| 国产精品腿扒开做爽爽爽挤奶网站| 亚洲涩涩在线| 精品国产亚洲在线| 亚洲天堂影院在线观看| 欧美视频第一页| 日本孕妇大胆孕交无码| 日韩高清国产一区在线观看| 强乱中文字幕av一区乱码| 久操国产精品| 中文字幕第24页| 国产原创中文av| 日韩精品久久理论片| 国产91在线高潮白浆在线观看| 91麻豆精品国产91久久久久| 精品日韩久久久| 99re久久最新地址获取| 成人黄色免费片| 欧美三日本三级三级在线播放| 亚洲一本大道| 在线国产三级| 在线观看入口黄最新永久免费国产| 日韩精品免费一区二区三区| 欧洲不卡视频| 欧美黄色成人| 精品国产一区二区三区久久久狼| 亚洲aa在线观看| 九色网com| 欧美专区日韩| 国产999精品久久久久久| 91在线观看| 伊人国产视频| 精品一区二区三区不卡| 开心九九激情九九欧美日韩精美视频电影| 久久久久久久久久久久电影| 久久精品国产亚洲av麻豆| 日本a在线免费观看| 亚洲成人综合在线| 欧美激情一区二区三区在线视频| 777久久精品一区二区三区无码| 香蕉视频在线观看网站| 欧美与黑人午夜性猛交久久久| 国产精品有限公司| 亚洲女性喷水在线观看一区| 中国china体内裑精亚洲片| 久久久国产一区二区三区| 五月天婷婷色综合| 国产精品678| 尤物视频..com| 欧美日韩国产一二三区| 亚洲激情一区二区| 在线免费av导航| 成人a级免费视频| 国产偷窥老熟盗摄视频| 六十路在线观看| 国产精品1luya在线播放| 久久精品国产露脸对白| 成人高潮成人免费观看| 免费又爽又黄禁片视频1000片| 欧美精品18videosex性欧美| 欧美成人黑人xx视频免费观看| 国产精品高潮呻吟久久av野狼| 久蕉在线视频| 成人在线国产精品| 一级片视频免费看| 亚洲一区图片| 欧洲视频一区二区三区| 精品国产乱子伦一区| 日韩精品成人在线观看| 亚洲色图综合图区| 交换国产精品视频一区| 另类专区欧美制服同性| 国产成人va亚洲电影| www.色呦呦| 色综合中文字幕国产| 免费视频91蜜桃| 亚洲一区二区三区四区在线观看| 国产男人搡女人免费视频| 男人的天堂色| 欧美日韩乱国产| 日本免费一区二区三区| 国产精品无码久久久久一区二区| 国产高清自拍视频| 三上悠亚一区二区三区| 精品91一区二区三区| 91tv精品福利国产在线观看| 超薄肉色丝袜一二三| 国产又粗又猛又爽又黄av| 99国产精品自拍| aa视频在线观看| 一区二区亚洲欧洲国产日韩| 国产网站免费在线观看| 永久免费黄色片| 影音先锋成人在线电影| 黄色av片三级三级三级免费看| 欧美情侣在线播放| 天天色天天综合| 黄网站色视频免费观看| 精品欧美一区二区在线观看| 欧美日本视频一区| 蜜臀久久精品久久久用户群体| 日本不卡二区高清三区| julia中文字幕久久亚洲蜜臀| 久久精品视频免费观看| 精品美女一区| 26uuu亚洲电影| www.8ⅹ8ⅹ羞羞漫画在线看| 久久久久九九视频| 成年网站在线免费观看| 国产综合18久久久久久| 欧美无砖专区一中文字| 97影院理论午夜| 欧美性生活影院| 国产小视频91| 国产探花在线观看视频| 亚洲在线观看免费视频| 一级毛片免费看| 久久99精品波多结衣一区| 精品国产av一区二区| 九色国产蝌蚪视频| 手机在线看福利| 青草久久视频| 性一交一乱一区二区洋洋av| 91麻豆制片厂| 无遮挡又色又刺激的女人视频| 丝袜一区二区三区| 一区二区不卡免费视频| 999精品色在线播放| 欧美日韩福利| 亚洲精品久久久久久久蜜桃臀| 亚洲国产综合91精品麻豆| 亚洲av无码一区二区三区性色| 亚洲一级免费在线观看| 美女网站在线观看| 在线看的黄色网址| 日韩美女免费视频| 国产精品视频123| 九九热视频在线观看| 神马影院我不卡午夜| 精品婷婷伊人一区三区三| 欧美性受xxxx黑人猛交88| 国产夫妻在线视频| 污网站在线免费| av资源在线| 亚洲色图 激情小说| 五月婷婷久久丁香| 欧美性受xxxx黑人xxxx| 欧美极品中文字幕| 国内露脸中年夫妇交换精品| 欧美精品一区二区三区四区五区| 无码国产精品96久久久久| 亚洲精品一二| 久久综合色播五月| 九九视频精品在线| 日韩高清在线不卡| 日本在线视频免费观看| 亚洲精品婷婷| 精品国偷自产国产一区| 蜜桃久久精品一区二区| 亚洲日本中文字幕在线| 久久精品视频亚洲| 北条麻妃久久精品| 国产精品国产三级国产专播品爱网| 欧美精品一区三区| 老司机午夜精品| 日韩综合一区| 国内精品久久久久久久久| 久久国产婷婷国产香蕉| 一本大道香蕉久在线播放29| 天天碰夜夜操| 久久资源av| 天堂网视频在线| 97成人精品区在线播放| 婷婷成人激情| heyzo视频在线播放| 成人c视频免费高清在线观看| 91sa在线看| 国产亚洲欧美在线| 欧美日韩一区二| 在线亚洲免费视频| 午夜无码国产理论在线| 亚洲精品传媒| 国产精品女主播| 国产网友自拍视频导航网站在线观看| 成人影院在线播放| 国产麻豆精品视频| 亚洲三级网址| 国产偷v国产偷v亚洲高清| 欧美国产视频在线观看| 国产又黄又粗又猛又爽的| 中文字幕亚洲电影| 五月婷婷欧美视频| 免费看污片的软件| 午夜一区二区三视频在线观看| 国产青青视频| 亚洲激情免费观看| 国产午夜亚洲精品羞羞网站| 久久乐国产精品| 日韩亚洲第一页| 国产精品30p| 午夜激情视频在线播放| 国产第一亚洲| 欧美日韩激情| 色播视频在线观看| 日韩日韩日韩日韩| 五月天丁香在线| 久久久久一区二区| 国产精品理伦片| 国产精品久久久久久吹潮| 视频一区二区三区四区五区| 原谅我中文字幕| 成人免费视频毛片| 国产午夜精品全部视频播放| 日本一区二区三区视频视频| 国产亚洲第一伦理第一区| 日本伊人精品一区二区三区介绍| 日韩激情av在线| 欧美成人精品福利在线视频| www.久久网| www.久久草| 性感美女一区二区三区| 国产视频在线观看一区| 欧洲三级视频| 男人操女人逼免费视频| 麻豆视频在线播放| 成年网站免费| 日韩在线不卡| 欧美jizzhd精品欧美另类| 中文字幕视频精品一区二区三区| 日韩中文字幕无砖| 成人精品免费网站| 国产欧美一区二区三区久久人妖| 日韩a在线播放| 成人影院天天5g天天爽无毒影院| 午夜亚洲福利老司机| 9999热视频| 国产在线欧美在线| 亚洲国产精品热久久| 亚洲综合色丁香婷婷六月图片| a级影片在线观看| 在线免费日韩av| 久久久亚洲精品石原莉奈| 一分钟免费观看视频播放www| 欧美日韩综合视频| 在线天堂资源| 日韩精品中文字幕吗一区二区| 高清av电影在线观看| 最近更新的2019中文字幕| 欧美日韩亚洲综合一区二区三区激情在线| 韩国版免费三体| 久久99国产精品成人| 亚洲图片第一页| 国产日产欧美一区二区视频| 欧美老熟妇喷水| 亚洲狠狠婷婷综合久久久| 日韩网红少妇无码视频香港| 成人动漫视频在线观看完整版| 欧美日韩国产123| 91国在线观看| 国产三级一区| 中文字幕乱码久久午夜不卡| 久久久.www| 欧美 国产 精品| 色播五月激情五月| 国产精品久久777777换脸| 精品人妻av一区二区三区| 91久久精品国产性色| 国产精品一区二区三区乱码| 欧美xxav| 欧美国产在线电影| 精品一卡二卡三卡四卡日本乱码| 欧美私人啪啪vps| 久久久久久久久久久久久久久| 亚洲少妇xxx| 久久精品福利| 久久国产精品1区2区3区网页| 五月婷婷综合在线| 欧美一区二区视频在线观看| 成人激情视频网| 欧美激情二区三区| 欧美性生活大片免费观看网址| 久久精品国产亚洲一区二区三区| 欧美日韩一区在线| 国产真人无遮挡作爱免费视频| 欧美激情中文字幕在线| 美国十次综合久久| 亚洲国产你懂的| 久久亚洲精品成人| 欧美亚洲成人免费| 久久久久久久久久久久久久久久av| 成人影视免费观看| 国产91精品久久久久久| 黄色一区二区视频| 日韩视频www| 中文字幕亚洲精品| 亚洲第一区色| 亚洲欧美激情精品一区二区|