HTML5+lufylegend實(shí)現(xiàn)游戲中的卷軸
來源:易賢網(wǎng) 閱讀:1163 次 日期:2016-07-07 14:11:16
溫馨提示:易賢網(wǎng)小編為您整理了“HTML5+lufylegend實(shí)現(xiàn)游戲中的卷軸”,方便廣大網(wǎng)友查閱!

從國外的一個(gè)龐大腳本提取出來的注冊表操作類,喜歡的朋友可以收藏下

代碼如下:

Option Explicit

Const WBEM_MAX_WAIT = &H80

' Registry Hives

Const HKEY_LOCAL_MACHINE = &H80000002

Const HKEY_CURRENT_USER = &H80000001

Const HKEY_CLASSES_ROOT = &H80000000

Const HKEY_USERS = &H80000003

Const HKEY_CURRENT_CONFIG = &H80000005

Const HKEY_DYN_DATA = &H80000006

' Reg Value Types

Const REG_SZ = 1

Const REG_EXPAND_SZ = 2

Const REG_BINARY = 3

Const REG_DWORD = 4

Const REG_MULTI_SZ = 7

' Registry Permissions

Const KEY_QUERY_VALUE = &H00001

Const KEY_SET_VALUE = &H00002

Const KEY_CREATE_SUB_KEY = &H00004

Const KEY_ENUMERATE_SUB_KEYS = &H00008

Const KEY_NOTIFY = &H00016

Const KEY_CREATE = &H00032

Const KEY_DELETE = &H10000

Const KEY_READ_CONTROL = &H20000

Const KEY_WRITE_DAC = &H40000

Const KEY_WRITE_OWNER = &H80000

Class std_registry

Private Sub Class_Initialize()

Set objRegistry = Nothing

End Sub

' Connect to the reg provider for this registy object

Public Function ConnectProvider32( sComputerName )

ConnectProvider32 = False

Set objRegistry = Nothing

'On Error Resume Next

Dim oLoc : Set oLoc = CreateObject("Wbemscripting.SWbemLocator")

Dim oCtx : Set oCtx = CreateObject("WbemScripting.SWbemNamedValueSet")

' Force 64 Bit Registry

Call oCtx.Add("__ProviderArchitecture", 32 )

Call oCtx.Add("__RequiredArchitecture", True)

Dim oSvc : Set oSvc = oLoc.ConnectServer(sComputerName,"root\default","","",,,WBEM_MAX_WAIT,oCtx)

Set objRegistry = oSvc.Get("StdRegProv")

If Err.Number = 0 Then

ConnectProvider32 = True

End If

End Function

' Connect to the reg provider for this registy object

Public Function ConnectProvider64( sComputerName )

ConnectProvider64 = False

Set objRegistry = Nothing

On Error Resume Next

Dim oLoc : Set oLoc = CreateObject("Wbemscripting.SWbemLocator")

Dim oCtx : Set oCtx = CreateObject("WbemScripting.SWbemNamedValueSet")

' Force 64 Bit Registry

Call oCtx.Add("__ProviderArchitecture", 64 )

Call oCtx.Add("__RequiredArchitecture", True)

Dim oSvc : Set oSvc = oLoc.ConnectServer(sComputerName,"root\default","","",,,WBEM_MAX_WAIT,oCtx)

Set objRegistry = oSvc.Get("StdRegProv")

If Err.Number = 0 Then

ConnectProvider64 = True

End If

End Function

Public Function IsValid()

IsValid = Eval( Not objRegistry Is Nothing )

End Function

' Used to read values from the registry, Returns 0 for success, all else is error

' ByRef data contains the registry value if the functions returns success

' The constants can be used for the sRootKey value:

' HKEY_LOCAL_MACHINE

' HKEY_CURRENT_USER

' HKEY_CLASSES_ROOT

' HKEY_USERS

' HKEY_CURRENT_CONFIG

' HKEY_DYN_DATA

' The constants can be used for the sType value:

' REG_SZ

' REG_MULTI_SZ

' REG_EXPAND_SZ

' REG_BINARY

' REG_DWORD

Public Function ReadValue(ByVal hkRoot , ByVal nType , ByVal sKeyPath, ByVal sValueName , ByRef Data)

On Error Resume Next

ReadValue = -1

Dim bReturn, Results

If hkRoot = HKEY_LOCAL_MACHINE Or hkRoot = HKEY_CURRENT_USER Or hkRoot = HKEY_CLASSES_ROOT Or hkRoot = HKEY_USERS Or hkRoot = HKEY_CURRENT_CONFIG Or hkRoot = HKEY_DYN_DATA Then

'Read Value

Select Case nType

Case REG_SZ

ReadValue = objRegistry.GetStringValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_MULTI_SZ

ReadValue = objRegistry.GetMultiStringValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_EXPAND_SZ

ReadValue = objRegistry.GetExpandedStringValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_BINARY

ReadValue = objRegistry.GetBinaryValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_DWORD

ReadValue = objRegistry.GetDWORDValue(hkRoot,sKeyPath,sValueName,Data)

End Select

End If

End Function

' Used to write registry values, returns 0 for success, all else is falure

'

' The constants can be used for the hkRoot value:

' HKEY_LOCAL_MACHINE

' HKEY_CURRENT_USER

' HKEY_CLASSES_ROOT

' HKEY_USERS

' HKEY_CURRENT_CONFIG

' HKEY_DYN_DATA

' The constants can be used for the nType value:

' REG_SZ

' REG_MULTI_SZ

' REG_EXPAND_SZ

' REG_BINARY

' REG_DWORD

Function WriteValue( ByVal hkRoot , ByVal nType , ByVal sKeyPath, ByVal sValueName , ByVal Data)

On Error Resume Next

WriteValue = -1 'Default error

If hkRoot = HKEY_LOCAL_MACHINE Or hkRoot = HKEY_CURRENT_USER Or hkRoot = HKEY_CLASSES_ROOT Or hkRoot = HKEY_USERS Or hkRoot = HKEY_CURRENT_CONFIG Or hkRoot = HKEY_DYN_DATA Then

Call objRegistry.CreateKey( hkRoot , sKeyPath ) 'Create the key if not existing...

'Read Value

Select Case nType

Case REG_SZ

WriteValue = objRegistry.SetStringValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_MULTI_SZ

WriteValue = objRegistry.SetMultiStringValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_EXPAND_SZ

WriteValue = objRegistry.SetExpandedStringValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_BINARY

WriteValue = objRegistry.SetBinaryValue(hkRoot,sKeyPath,sValueName,Data)

Case REG_DWORD

WriteValue = objRegistry.SetDWORDValue(hkRoot,sKeyPath,sValueName,Data)

End Select

End If

End Function

Function DeleteValue( ByVal hkRoot , ByVal sKeyPath , ByVal sValueName )

On Error Resume Next

DeleteValue = -1 'Default error

If hkRoot = HKEY_LOCAL_MACHINE Or hkRoot = HKEY_CURRENT_USER Or hkRoot = HKEY_CLASSES_ROOT Or hkRoot = HKEY_USERS Or hkRoot = HKEY_CURRENT_CONFIG Or hkRoot = HKEY_DYN_DATA Then

DeleteValue = objRegistry.DeleteValue( hkRoot , sKeyPath , sValueName )

End If

End Function

Public Function DeleteKey( hkRoot , ByVal sKeyPath )

DeleteKey = -1

On Error Resume Next

If hkRoot = HKEY_LOCAL_MACHINE Or hkRoot = HKEY_CURRENT_USER Or hkRoot = HKEY_CLASSES_ROOT Or hkRoot = HKEY_USERS Or hkRoot = HKEY_CURRENT_CONFIG Or hkRoot = HKEY_DYN_DATA Then

Dim arrSubKeys

Dim sSubKey

Call objRegistry.EnumKey( hkRoot, sKeyPath, arrSubkeys )

If IsArray(arrSubkeys) Then

For Each sSubKey In arrSubkeys

Call DeleteKey( hkRoot, sKeyPath & "\" & sSubKey , bForce)

Next

End If

DeleteKey = objRegistry.DeleteKey( hkRoot, sKeyPath )

End If

End Function

' Members Variables

Private objRegistry

End Class

Dim str

Dim r : Set r = New std_registry

If r.ConnectProvider32( "." ) Then

If r.ReadValue( HKEY_LOCAL_MACHINE , REG_EXPAND_SZ , "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" , "ComSpec" , str )=0 Then

Wsh.echo str

Else

Wsh.echo str

End If

End If

更多信息請查看網(wǎng)頁制作
易賢網(wǎng)手機(jī)網(wǎng)站地址:HTML5+lufylegend實(shí)現(xiàn)游戲中的卷軸
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)