亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? module1.bas

?? 遠(yuǎn)程訪問sql server 的源碼
?? BAS
字號:
Attribute VB_Name = "Module1"
Option Explicit

Const STANDARD_RIGHTS_ALL = &H1F0000
Const SPECIFIC_RIGHTS_ALL = &HFFFF
Const SYNCHRONIZE = &H100000
Const READ_CONTROL = &H20000
Const STANDARD_RIGHTS_READ = (READ_CONTROL)
Const STANDARD_RIGHTS_WRITE = (READ_CONTROL)

Const KEY_QUERY_VALUE = &H1
Const KEY_ENUMERATE_SUB_KEYS = &H8
Const KEY_NOTIFY = &H10
Const KEY_SET_VALUE = &H2
Const KEY_CREATE_SUB_KEY = &H4
Const KEY_READ = ((READ_CONTROL Or KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY) And (Not SYNCHRONIZE))
Const KEY_WRITE = ((STANDARD_RIGHTS_WRITE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY) And (Not SYNCHRONIZE))


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 RegCloseKey Lib "advapi32.dll" (ByVal hKey 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 RegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As Long, ByVal dwOptions As Long, ByVal samDesired As Long, ByVal lpSecurityAttributes As Long, 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 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 RegEnumKey Lib "advapi32.dll" Alias "RegEnumKeyA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpName As String, ByVal cbName As Long) As Long
Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) 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 Any, lpcbData As Long) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (dest As Any, source As Any, ByVal numBytes As Long)

Declare Function FormatMessage Lib "kernel32" Alias "FormatMessageA" (ByVal dwFlags As Long, lpSource As Any, ByVal dwMessageId As Long, ByVal dwLanguageId As Long, ByVal lpBuffer As String, ByVal nSize As Long, Arguments As Long) As Long

Const ERROR_SUCCESS = 0&


Public Const REG_CREATED_NEW_KEY = &H1
Public Const REG_OPENED_EXISTING_KEY = &H2

' Return True if the system has a math processor.

Function MathProcessor() As Boolean
    Dim hKey As Long, key As String
    key = "HARDWARE\DESCRIPTION\System\FloatingPointProcessor"
    If RegOpenKeyEx(HKEY_LOCAL_MACHINE, key, 0, KEY_READ, hKey) = 0 Then
        ' If the open operation succeeded, the key exists
        MathProcessor = True
        ' Important: close the key before exiting.
        RegCloseKey hKey
    End If
End Function

' Test if a Registry key exists.

Function CheckRegistryKey(ByVal hKey As Long, ByVal KeyName As String) As Boolean
    Dim handle As Long
    ' Try to open the key.
    If RegOpenKeyEx(hKey, KeyName, 0, KEY_READ, handle) = 0 Then
        ' The key exists.
        CheckRegistryKey = True
        ' Close it before exiting.
        RegCloseKey handle
    End If
End Function

' Create a registry key, then close it.
' Returns True if the key already existed, False if it was created.

Function CreateRegistryKey(ByVal hKey As Long, ByVal KeyName As String) As Boolean
    Dim handle As Long, disposition As Long
    If RegCreateKeyEx(hKey, KeyName, 0, 0, 0, 0, 0, handle, disposition) Then
        Err.Raise 1001, , "Unable to create the registry key"
    Else
        ' Return True if the key already existed.
        CreateRegistryKey = (disposition = REG_OPENED_EXISTING_KEY)
        ' Close the key.
        RegCloseKey handle
    End If
End Function

' Delete a registry key.
' Under Windows NT it doesn't work if the key contains subkeys.

Sub DeleteRegistryKey(ByVal hKey As Long, ByVal KeyName As String)
    RegDeleteKey hKey, KeyName
End Sub

' Read a Registry value.
' Use KeyName = "" for the default value.
' Supports only DWORD, SZ, and BINARY value types.

Function GetRegistryValue(ByVal hKey As Long, ByVal KeyName As String, _
    ByVal ValueName As String, ByVal KeyType As Integer, _
    Optional DefaultValue As Variant = Empty) As Variant

    Dim handle As Long, resLong As Long
    Dim resString As String, length As Long
    Dim resBinary() As Byte
    
    ' Prepare the default result.
    GetRegistryValue = DefaultValue
    ' Open the key, exit if not found.
    If RegOpenKeyEx(hKey, KeyName, 0, KEY_READ, handle) Then Exit Function
    
    Select Case KeyType
        Case REG_DWORD
            ' Read the value, use the default if not found.
            If RegQueryValueEx(handle, ValueName, 0, REG_DWORD, _
                resLong, 4) = 0 Then
                GetRegistryValue = resLong
            End If
        Case REG_SZ
            length = 1024: resString = Space$(length)
            If RegQueryValueEx(handle, ValueName, 0, REG_SZ, _
                ByVal resString, length) = 0 Then
                ' If value is found, trim characters in excess.
                GetRegistryValue = Left$(resString, length - 1)
            End If
        Case REG_BINARY
            length = 4096
            ReDim resBinary(length - 1) As Byte
            If RegQueryValueEx(handle, ValueName, 0, REG_BINARY, _
                resBinary(0), length) = 0 Then
                ReDim Preserve resBinary(length - 1) As Byte
                GetRegistryValue = resBinary()
            End If
        Case Else
            Err.Raise 1001, , "Unsupported value type"
    End Select
    
    RegCloseKey handle
End Function

' Write / Create a Registry value.
' Use KeyName = "" for the default value.
' Supports only DWORD, SZ, and BINARY value types.

Sub SetRegistryValue(ByVal hKey As Long, ByVal KeyName As String, ByVal ValueName As String, ByVal KeyType As Integer, value As Variant)
    Dim handle As Long, lngValue As Long
    Dim strValue As String
    Dim binValue() As Byte, length As Long
    
    ' Open the key, exit if not found.
    If RegOpenKeyEx(hKey, KeyName, 0, KEY_WRITE, handle) Then Exit Sub
    
    Select Case KeyType
        Case REG_DWORD
            lngValue = value
            RegSetValueEx handle, ValueName, 0, KeyType, lngValue, 4
        Case REG_SZ
            strValue = value
            RegSetValueEx handle, ValueName, 0, KeyType, ByVal strValue, Len(strValue)
        Case REG_BINARY
            binValue = value
            length = UBound(binValue) - LBound(binValue) + 1
            RegSetValueEx handle, ValueName, 0, KeyType, binValue(LBound(binValue)), length
    End Select
    
    ' Close the key.
    RegCloseKey handle
End Sub

' Delete a value.

Sub DeleteRegistryValue(ByVal hKey As Long, ByVal KeyName As String, ByVal ValueName As String)
    Dim handle As Long
    
    ' Open the key, exit if not found.
    If RegOpenKeyEx(hKey, KeyName, 0, KEY_WRITE, handle) Then Exit Sub
    ' Delete the value.
    RegDeleteValue handle, ValueName
    ' Close the handle.
    RegCloseKey handle
End Sub

' Enumerate registry keys under a given key, returns an array of strings.

Function EnumRegistryKeys(ByVal hKey As Long, ByVal KeyName As String) As String()
    Dim handle As Long, index As Long, length As Long
    ReDim result(0 To 100) As String
    Dim FileTimeBuffer(100) As Byte
    
    ' Open the key, exit if not found.
    If Len(KeyName) Then
        If RegOpenKeyEx(hKey, KeyName, 0, KEY_READ, handle) Then Exit Function
        ' in all case the subsequent functions use hKey
        hKey = handle
    End If
    
    For index = 0 To 999999
        ' Make room in the array.
        If index > UBound(result) Then
            ReDim Preserve result(index + 99) As String
        End If
        length = 260                   ' Max length for a key name.
        result(index) = Space$(length)
        If RegEnumKey(hKey, index, result(index), length) Then Exit For
        result(index) = Left$(result(index), InStr(result(index), vbNullChar) - 1)
    Next
   
    ' Close the key, if it was actually opened.
    If handle Then RegCloseKey handle
        
    ' Trim unused items in the array.
    ReDim Preserve result(index - 1) As String
    EnumRegistryKeys = result()
End Function

' Enumerate registry values under a given key,
' returns a two dimensional array of Variant (row 0 for value names, row 1 for value contents)

Function ggEnumRegistryValues(ByVal hKey As Long, ByVal KeyName As String) As Variant()
    Dim handle As Long, index As Long, valueType As Long
    Dim name As String, nameLen As Long
    Dim lngValue As Long, strValue As String, dataLen As Long
    
    ReDim result(0 To 1, 0 To 100) As Variant

    ' Open the key, exit if not found.
    If Len(KeyName) Then
        If RegOpenKeyEx(hKey, KeyName, 0, KEY_READ, handle) Then Exit Function
        ' in all case the subsequent functions use hKey
        hKey = handle
    End If
    
    For index = 0 To 999999
        ' Make room in the array.
        If index > UBound(result, 2) Then
            ReDim Preserve result(0 To 1, index + 99) As Variant
        End If
        nameLen = 260                   ' Max length for a key name.
        name = Space$(nameLen)
        dataLen = 4096
        ReDim binValue(0 To dataLen - 1) As Byte
        If RegEnumValue(hKey, index, name, nameLen, ByVal 0&, valueType, binValue(0), dataLen) Then Exit For
        result(0, index) = Left$(name, nameLen)
        
        Select Case valueType
            Case REG_DWORD
                ' Copy the first 4 bytes into a long variable
                CopyMemory lngValue, binValue(0), 4
                result(1, index) = lngValue
            Case REG_SZ
                ' Convert the result to a string.
                result(1, index) = Left$(StrConv(binValue(), vbUnicode), dataLen - 1)
            Case Else
                ' In all other cases, just copy the array of bytes.
                ReDim Preserve binValue(0 To dataLen - 1) As Byte
                result(1, index) = binValue()
        End Select
    Next
   
    ' Close the key, if it was actually opened.
    If handle Then RegCloseKey handle
        
    ' Trim unused items in the array.
    ReDim Preserve result(0 To 1, index - 1) As Variant
    ggEnumRegistryValues = result()
End Function

' You can use this function to decypher error messages from the API.

Function SystemMessage(ApiErrorCode As Long) As String
    Dim buffer As String, length As Long
    Const FORMAT_MESSAGE_FROM_SYSTEM = &H1000
    
    buffer = Space$(1024)
    length = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, ByVal 0, ApiErrorCode, 0, buffer, Len(buffer), ByVal 0)
    SystemMessage = Left$(buffer, length)
    
End Function


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三片在线视频观看| 91丨porny丨首页| 欧美疯狂性受xxxxx喷水图片| 亚洲伦理在线免费看| 在线观看免费一区| 丝袜诱惑制服诱惑色一区在线观看 | 国产99久久久国产精品潘金网站| 精品国产sm最大网站免费看| 国产成人综合网| 国产精品久久久久久久裸模| 色94色欧美sute亚洲13| 午夜伦理一区二区| 欧美本精品男人aⅴ天堂| 国产v日产∨综合v精品视频| 国产精品大尺度| 欧美日韩一区在线观看| 激情综合五月婷婷| 国产精品久久久久久久久久免费看 | 国产成人精品一区二区三区四区 | 欧美一区二区三区免费视频| 久久99久国产精品黄毛片色诱| 国产三级精品在线| 色八戒一区二区三区| 青青草伊人久久| 中文在线资源观看网站视频免费不卡 | 这里只有精品电影| 国产成人av电影在线| 亚洲一区二区三区中文字幕| 欧美tk—视频vk| 91亚洲国产成人精品一区二三| 日日欢夜夜爽一区| 国产午夜亚洲精品午夜鲁丝片| 色综合亚洲欧洲| 蜜臀久久久99精品久久久久久| 中文字幕的久久| 制服丝袜av成人在线看| 成人av在线网| 蜜臀久久99精品久久久久久9 | 精品国产乱码久久久久久牛牛| 99精品在线免费| 久久9热精品视频| 日韩久久一区二区| 久久婷婷国产综合精品青草| 欧日韩精品视频| 成人在线一区二区三区| 男人的天堂亚洲一区| 亚洲另类在线一区| 久久久夜色精品亚洲| 欧美精三区欧美精三区 | 欧美亚日韩国产aⅴ精品中极品| 久99久精品视频免费观看| 亚洲精品v日韩精品| 久久精品欧美日韩精品| 91麻豆精品国产91| 日本韩国欧美一区| a美女胸又www黄视频久久| 成人av网站免费| 国产喷白浆一区二区三区| 欧美男人的天堂一二区| 色婷婷av一区二区三区gif| 成人午夜又粗又硬又大| 国产一区欧美日韩| 久久99精品国产91久久来源| 天涯成人国产亚洲精品一区av| 一区二区三区色| 亚洲视频一区二区免费在线观看| 国产日产欧产精品推荐色| 精品国产乱码久久久久久久久 | 亚洲自拍与偷拍| 中文字幕日本乱码精品影院| 久久久国产精品午夜一区ai换脸| 欧美一三区三区四区免费在线看| 欧美三级韩国三级日本一级| 91国模大尺度私拍在线视频| 91在线精品一区二区三区| 不卡电影一区二区三区| 国产盗摄一区二区| 国产·精品毛片| 懂色av中文字幕一区二区三区| 国产美女av一区二区三区| 韩国欧美国产一区| 国产乱人伦偷精品视频免下载| 国产伦理精品不卡| 大美女一区二区三区| 懂色av一区二区三区免费看| 成人国产亚洲欧美成人综合网 | 99精品视频在线观看| jlzzjlzz欧美大全| 色婷婷精品大在线视频 | 91.麻豆视频| 欧美日韩精品一区二区三区| 欧美日韩视频在线一区二区| 欧美一区二区在线看| 日韩精品资源二区在线| 久久婷婷久久一区二区三区| 中文字幕精品—区二区四季| 亚洲免费观看视频| 无码av免费一区二区三区试看 | 久久久精品免费观看| 国产精品天美传媒| 亚洲日穴在线视频| 亚洲不卡在线观看| 久久精品国产99国产| 成人激情开心网| 欧美视频第二页| 91精品国产91综合久久蜜臀| 久久久久久久久一| 亚洲免费观看高清完整版在线观看熊 | 欧美三级电影网| 日韩三级电影网址| 国产精品久久久久久久久动漫| 亚洲乱码精品一二三四区日韩在线 | 成人一道本在线| 欧美在线观看视频一区二区三区| 欧美一卡二卡三卡四卡| 国产精品美女久久久久久久久久久| 亚洲电影第三页| 国产精品综合一区二区三区| 欧美在线你懂的| 国产网站一区二区| 天天色 色综合| 高清久久久久久| 678五月天丁香亚洲综合网| 国产欧美日韩卡一| 日韩精品一二三区| av中文字幕不卡| 日韩免费性生活视频播放| 最新国产成人在线观看| 国产乱码精品一品二品| 在线精品亚洲一区二区不卡| 26uuu精品一区二区在线观看| 一区二区三区 在线观看视频| 国产精品伊人色| 91精品国产手机| 亚洲蜜桃精久久久久久久| 国产专区欧美精品| 在线播放国产精品二区一二区四区 | 亚洲国产精品视频| 国产成人免费视频| 欧美一区二区三区白人| 综合激情成人伊人| 国产一区视频导航| 日韩视频一区二区三区| 亚洲免费在线播放| 不卡欧美aaaaa| 久久这里只有精品首页| 男男视频亚洲欧美| 欧美亚洲高清一区二区三区不卡| 国产欧美一区二区精品婷婷 | 亚洲欧美乱综合| 国产91精品露脸国语对白| 欧美大胆人体bbbb| 日韩在线卡一卡二| 欧美视频精品在线观看| 一区二区三区中文字幕电影 | 日韩一区二区影院| 亚洲综合久久av| 色素色在线综合| 国产精品久久久久四虎| 国产成人三级在线观看| 久久久久综合网| 黑人巨大精品欧美一区| 日韩一区二区在线看片| 调教+趴+乳夹+国产+精品| 欧美日韩的一区二区| 亚洲精品日日夜夜| 色噜噜狠狠色综合欧洲selulu| 中文在线资源观看网站视频免费不卡| 国产老女人精品毛片久久| 久久婷婷久久一区二区三区| 国产在线精品一区二区夜色| 精品999在线播放| 国产一区二区精品在线观看| 久久综合九色欧美综合狠狠| 久久66热偷产精品| 2023国产精品| 国产激情一区二区三区| 中文字幕不卡一区| 99久久伊人网影院| 尤物av一区二区| 51久久夜色精品国产麻豆| 另类中文字幕网| 国产清纯在线一区二区www| 成人午夜视频网站| 一级女性全黄久久生活片免费| 在线观看av一区二区| 五月开心婷婷久久| 精品国产百合女同互慰| 成人午夜av电影| 一区二区三区在线播放| 4438亚洲最大| 国产一区不卡在线| 18成人在线视频| 欧美日韩精品一区二区三区| 免费在线一区观看| 中文字幕第一区| 欧美日韩高清在线播放| 国产自产高清不卡| 亚洲素人一区二区| 91精品国产综合久久香蕉麻豆 |