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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? winsock.bas

?? 《Windows網絡編程技術》配套代碼! 值得學習
?? BAS
?? 第 1 頁 / 共 3 頁
字號:
Global Const NS_SAP = 1
Global Const NS_NDS = 2
Global Const NS_PEER_BROWSE = 3

Global Const NS_TCPIP_LOCAL = 10
Global Const NS_TCPIP_HOSTS = 11
Global Const NS_DNS = 12
Global Const NS_NETBT = 13
Global Const NS_WINS = 14

Global Const NS_NBP = 20

Global Const NS_MS = 30
Global Const NS_STDA = 31
Global Const NS_NTDS = 32

Global Const NS_X500 = 40
Global Const NS_NIS = 41
Global Const NS_NISPLUS = 42

Global Const NS_WRQ = 50

Type WSANAMESPACE_INFO
    NSProviderId As GUID
    dwNameSpace As Long
    fActive As Long
    dwVersion As Long
    lpszIdentifier As Long
End Type

Type sockaddr
    sin_family As Integer
    sin_port As Integer
    sin_addr As Long
    sin_zero As String * 8
End Type
Global Const sockaddr_size = 16

Type HostEnt
    h_name As Long
    h_aliases As Long
    h_addrtype As Integer
    h_length As Integer
    h_addr_list As Long
End Type
Global Const hostent_size = 16

Global Const WSA_DESCRIPTIONLEN = 256
Global Const WSA_DescriptionSize = WSA_DESCRIPTIONLEN + 1
Global Const WSA_SYS_STATUS_LEN = 128
Global Const WSA_SysStatusSize = WSA_SYS_STATUS_LEN + 1

Type WSADataType
    wVersion As Integer
    wHighVersion As Integer
    szDescription As String * WSA_DescriptionSize
    szSystemStatus As String * WSA_SysStatusSize
    iMaxSockets As Integer
    iMaxUdpDg As Integer
    lpVendorInfo As Long
End Type

Type LingerType
    l_onoff As Integer
    l_linger As Integer
End Type


Global Const FD_READ_BIT = 0
Global Const FD_READ = 1         ''(1 << FD_READ_BIT)

Global Const FD_WRITE_BIT = 1
Global Const FD_WRITE = &H2        ''(1 << FD_WRITE_BIT)

Global Const FD_OOB_BIT = 2
Global Const FD_OOB = &H4          '(1 << FD_OOB_BIT)

Global Const FD_ACCEPT_BIT = 3
Global Const FD_ACCEPT = &H8       '(1 << FD_ACCEPT_BIT)

Global Const FD_CONNECT_BIT = 4
Global Const FD_CONNECT = &H10      '(1 << FD_CONNECT_BIT)

Global Const FD_CLOSE_BIT = 5
Global Const FD_CLOSE = &H20       '(1 << FD_CLOSE_BIT)

Global Const FD_QOS_BIT = 6
Global Const FD_QOS = &H40          '(1 << FD_QOS_BIT)

Global Const FD_GROUP_QOS_BIT = 7
Global Const FD_GROUP_QOS = &H80   '(1 << FD_GROUP_QOS_BIT)

Global Const FD_ROUTING_INTERFACE_CHANGE_BIT = 8
Global Const FD_ROUTING_INTERFACE_CHANGE = &H100     '(1 << FD_ROUTING_INTERFACE_CHANGE_BIT)

Global Const FD_ADDRESS_LIST_CHANGE_BIT = 9
Global Const FD_ADDRESS_LIST_CHANGE = &H200   '(1 << FD_ADDRESS_LIST_CHANGE_BIT)

Global Const FD_MAX_EVENTS = 10
Global Const FD_ALL_EVENTS = &H3FF     '(1 << FD_MAX_EVENTS) - 1)


Type WSANETWORKEVENTS
    lNetWorkEvents As Long
    iErrorCode(FD_MAX_EVENTS - 1) As Long
End Type

Global Const WSA_WAIT_FAILED = &HFFFFFFFF
Global Const WSA_WAIT_EVENT_0 = 0
Global Const WSA_WAIT_TIMEOUT = &H102

Public Const GMEM_FIXED = &H0
Public Declare Function GlobalAlloc Lib "Kernel32" (ByVal wFlags As Long, ByVal dwBytes As Long) As Long
Public Declare Function GlobalFree Lib "Kernel32" (ByVal hMem As Long) As Long
Public Declare Sub CopyMemory Lib "Kernel32" Alias "RtlMoveMemory" (dest As Any, src As Any, ByVal cb As Long)
Public Declare Sub CopyMemory2 Lib "Kernel32" Alias "RtlMoveMemory" (dest As Any, ByVal src As Long, ByVal cb As Long)
Public Declare Sub CopyMemory3 Lib "Kernel32" Alias "RtlMoveMemory" (dest As Long, ByVal src As Long, ByVal cb As Long)
Public Declare Sub ZeroMemory Lib "Kernel32" Alias "RtlZeroMemory" (dest As Any, ByVal numBytes As Long)
Public Declare Function StringFromGUID2 Lib "ole32.dll" (pGUID As GUID, ByVal _
PointerToString As String, ByVal MaxLength As Long) As Long
Public Declare Function lstrcpy Lib "Kernel32" Alias "lstrcpyA" (ByVal lpString1 As String, lpString2 As Byte) As Long
Public Declare Function lstrlen Lib "Kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long
Public Declare Function lstrcpy1 Lib "Kernel32" Alias "lstrcpyA" (ByVal lpString1 As String, ByVal lpString2 As Long) As Long
Public Declare Function GetCurrentProcessId Lib "Kernel32" () As Long
Public Declare Function GetTickCount Lib "Kernel32" () As Long
Public Declare Function Sleep Lib "Kernel32" (ByVal dwMilliseconds As Long) As Long

Declare Function getsockname Lib "ws2_32.DLL" (ByVal s As Long, sname As sockaddr, namelen As Long) As Long
Declare Function WSAStartup Lib "ws2_32.DLL" (ByVal wVR As Long, lpWSAD As WSADataType) As Long
Declare Function WSACleanup Lib "ws2_32.DLL" () As Long
Declare Function bind Lib "ws2_32.DLL" (ByVal s As Long, addr As sockaddr, ByVal namelen As Long) As Long
Declare Function accept Lib "ws2_32.DLL" (ByVal s As Long, addr As sockaddr, namelen As Long) As Long
Declare Function socket Lib "ws2_32.DLL" (ByVal af As Long, ByVal s_type As Long, ByVal protocol As Long) As Long
Declare Function WSASocket Lib "ws2_32.DLL" Alias "WSASocketA" (ByVal af As Long, ByVal s_type As Long, ByVal protocol As Long, lpProtocolInfo As Any, ByVal g As Long, ByVal dwFlags As Long) As Long
Declare Function closesocket Lib "ws2_32.DLL" (ByVal s As Long) As Long
Declare Function connect Lib "ws2_32.DLL" (ByVal s As Long, addr As sockaddr, ByVal namelen As Long) As Long
Declare Function gethostbyname Lib "ws2_32.DLL" (ByVal host_name As String) As Long
Declare Function gethostbyaddr Lib "ws2_32.DLL" (addr As Any, ByVal nlen As Long, ByVal ntype As Long) As Long
Declare Function gethostname Lib "ws2_32.DLL" (ByVal host_name As String, ByVal namelen As Long) As Long
Declare Function recv Lib "ws2_32.DLL" (ByVal s As Long, Buf As Any, ByVal buflen As Long, ByVal flags As Long) As Long
Declare Function recvfrom Lib "ws2_32.DLL" (ByVal s As Long, Buf As Any, ByVal buflen As Long, ByVal flags As Long, from As sockaddr, fromlen As Long) As Long
Declare Function send Lib "ws2_32.DLL" (ByVal s As Long, Buf As Any, ByVal buflen As Long, ByVal flags As Long) As Long
Declare Function sendto Lib "ws2_32.DLL" (ByVal s As Long, Buf As Any, ByVal buflen As Long, ByVal flags As Long, to_addr As Any, ByVal tolen As Long) As Long
Declare Function htonl Lib "ws2_32.DLL" (ByVal hostlong As Long) As Long
Declare Function htons Lib "ws2_32.DLL" (ByVal hostshort As Long) As Integer
Declare Function ntohs Lib "ws2_32.DLL" (ByVal netshort As Long) As Integer
Declare Function ntohl Lib "ws2_32.DLL" (ByVal netlong As Long) As Long
Declare Function inet_addr Lib "ws2_32.DLL" (ByVal cp As String) As Long
Declare Function inet_ntoa Lib "ws2_32.DLL" (ByVal in_n As Long) As Long
Declare Function setsockopt Lib "ws2_32.DLL" (ByVal s As Long, ByVal level As Long, ByVal optname As Long, optval As Long, ByVal optlen As Long) As Long
Declare Function setsockopt2 Lib "ws2_32.DLL" Alias "setsockopt" (ByVal s As Long, ByVal level As Long, ByVal optname As Long, optval As Any, ByVal optlen As Long) As Long
Declare Function getsockopt Lib "ws2_32.DLL" (ByVal s As Long, ByVal level As Long, ByVal optname As Long, optval As Long, optlen As Long) As Long
Declare Function getsockopt2 Lib "ws2_32.DLL" Alias "getsockopt" (ByVal s As Long, ByVal level As Long, ByVal optname As Long, optval As Any, optlen As Long) As Long
Declare Function listen Lib "ws2_32.DLL" (ByVal s As Long, ByVal backlog As Long) As Long
Declare Function WSAIoctl Lib "ws2_32.DLL" (ByVal s As Long, ByVal dwIoControlCode As Long, lpvInBuffer As Any, ByVal cbInBuffer As Long, _
     lpvOutBuffer As Any, ByVal cbOutBuffer As Long, lpcbBytesReturned As Long, lpOverlapped As Any, lpCompletionRoutine As Any) As Long
Declare Function WSAEnumProtocols Lib "ws2_32.DLL" Alias "WSAEnumProtocolsA" (ByVal lpiProtocols As Long, ByVal lpProtocolBuffer As Long, lpdwBufferLength As Long) As Long
'in VB, application should use Err.LastDllError to get last error of any API call
'Declare Function WSAGetLastError Lib "ws2_32.DLL" () As Long
Declare Function WSACreateEvent Lib "ws2_32.DLL" () As Long
Declare Function WSACloseEvent Lib "ws2_32.DLL" (ByVal hEvent As Long) As Boolean
Declare Function WSAEventSelect Lib "ws2_32.DLL" (ByVal s As Long, ByVal hEventOjbect As Long, ByVal lNetWorkEvents As Long) As Long
Declare Function WSAEnumNetworkEvents Lib "ws2_32.DLL" (ByVal s As Long, ByVal hEventOjbect As Long, lpNetWorkEvents As WSANETWORKEVENTS) As Long
Declare Function WSAWaitForMultipleEvents Lib "ws2_32.DLL" (ByVal cEvents As Long, _
    lphEvents As Long, ByVal fWaitAll As Boolean, _
    ByVal dwTimeOUT As Long, ByVal fAlertable As Boolean) As Long
Declare Function WSAResetEvent Lib "ws2_32.DLL" (ByVal hEvent As Long) As Boolean

Declare Function WSAEnumNameSpaceProviders Lib "ws2_32.DLL" Alias "WSAEnumNameSpaceProvidersA" (lpdwBufferLength As Long, ByVal lpnspBuffer As Long) As Boolean

Public Const ICMP_ECHO = 8
Public Const ICMP_ECHOREPLY = 0
Public Const ICMP_MIN = 8  'minimum 8 byte icmp packet (header)
Public Const IP_RECORD_ROUTE = 7

' The IP header
Type IpHeader
   h_len As Byte              ' length of the header and  Version of IP
   tos As Byte                ' Type of service
   total_len As Integer       ' total length of the packet
   ident As Integer           ' unique identifier
   frag_and_flags As Integer  ' flags
   ttl As Byte
   proto As Byte              ' protocol (TCP, UDP etc)
   CheckSum As Integer        ' IP checksum
   sourceIP As Long
   destIP As Long
End Type

' ICMP header
Type IcmpHeader
  i_type As Byte
  i_code As Byte
  i_cksum As Integer
  i_id As Integer
  i_seq As Integer
  timestamp As Long   '/* This is not the std header, but we reserve space for time */
End Type

' IP option header - user with socket option IP_OPTIONS
Type IpOptionHeader
    code As Byte        'option type
    len As Byte         'length of option hdr
    ptr As Byte         'offset into options
    addr(8) As Long     'list of IP addrs
End Type

Function GetHostByNameAlias(ByVal hostname As String) As Long
    On Error Resume Next
    'Return IP address as a long, in network byte order

    Dim phe As Long    ' pointer to host information entry
    Dim heDestHost As HostEnt 'hostent structure
    Dim addrList As Long
    Dim retIP As Long
    'first check to see if what we have been passed is a valid IP
    retIP = inet_addr(hostname)
    If retIP = INADDR_NONE Then
        'it wasn't an IP, so do a DNS lookup
        phe = gethostbyname(hostname)
        If phe <> 0 Then
            'Pointer is non-null, so copy in hostent structure
            CopyMemory heDestHost, ByVal phe, hostent_size
            'Now get first pointer in address list
            CopyMemory addrList, ByVal heDestHost.h_addr_list, 4
            CopyMemory retIP, ByVal addrList, heDestHost.h_length
        Else
            'its not a valid address
            retIP = INADDR_NONE
        End If
    End If
    GetHostByNameAlias = retIP
    If Err Then GetHostByNameAlias = INADDR_NONE
End Function

Public Function TCPIPStartup() As Boolean
  Dim rc As Integer   'Return code
  Dim wVersionRequested As Long   'Version requested for winsocks
  Dim WSAData As WSADataType          'Detais os winsock implementation
  
  wVersionRequested = &H202
  TCPIPStartup = True
  rc = WSAStartup(wVersionRequested, WSAData)
  If rc <> 0 Then
    MsgBox ("RC: " & rc & " Unable to start winsocks" & ", Error " & Err.LastDllError)
    Call TCPIPShutDown
    TCPIPStartup = False
    Exit Function
  End If

End Function

Public Function TCPIPShutDown() As Boolean
    WSACleanup
End Function

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美专区亚洲专区| 欧美亚洲图片小说| 亚洲午夜精品在线| 久久久久久久综合色一本| 欧美午夜精品久久久久久超碰| 极品尤物av久久免费看| 亚洲国产三级在线| 国产精品久久久久国产精品日日| 91.成人天堂一区| 一本一道波多野结衣一区二区| 国产一区欧美一区| 日本视频中文字幕一区二区三区| 亚洲天堂免费看| 久久久国产精品麻豆| 91精品国产一区二区三区香蕉| 99久久精品国产导航| 国产福利视频一区二区三区| 婷婷一区二区三区| 亚洲激情图片小说视频| 中文字幕精品一区二区精品绿巨人| 欧美一区二区三区系列电影| 色偷偷88欧美精品久久久| 成人综合婷婷国产精品久久| 狠狠色狠狠色综合日日91app| 日韩精品视频网站| 亚洲综合免费观看高清完整版| 国产精品色哟哟网站| 久久综合色天天久久综合图片| 欧美一级专区免费大片| 欧美猛男超大videosgay| 欧洲中文字幕精品| 色综合视频在线观看| 99热这里都是精品| 波波电影院一区二区三区| 国产精品一区三区| 国内精品久久久久影院薰衣草 | 国产欧美1区2区3区| 精品国产乱码久久久久久免费| 欧美一区二区三区四区五区| 在线成人小视频| 欧美美女网站色| 日韩一级二级三级精品视频| 91 com成人网| 日韩免费高清av| 久久综合视频网| 日本一区二区在线不卡| 中文字幕中文字幕一区二区| 国产精品高清亚洲| 亚洲免费av观看| 亚洲高清不卡在线| 日本不卡视频一二三区| 久久国产精品一区二区| 国产一区二区三区四区五区美女| 国产自产视频一区二区三区| 国产 欧美在线| 91原创在线视频| 欧美午夜精品久久久久久超碰 | 日韩欧美一级片| 日韩美女视频在线| 国产亚洲精品中文字幕| 国产精品久久久久久久久久免费看| 亚洲欧洲99久久| 亚洲一区电影777| 免费在线欧美视频| 国产精品123| 色香蕉久久蜜桃| 5月丁香婷婷综合| 国产亚洲成年网址在线观看| 亚洲色图在线播放| 婷婷开心久久网| 国产在线国偷精品产拍免费yy| 成人精品鲁一区一区二区| 91麻豆免费观看| 日韩三级精品电影久久久 | 欧美亚洲国产怡红院影院| 亚洲男人天堂av网| 亚洲成人av电影| 国产精品一区二区在线播放| 色一情一伦一子一伦一区| 欧美一区二区日韩一区二区| 国产日韩欧美一区二区三区综合 | 夜夜夜精品看看| 久久激情五月婷婷| 99久久er热在这里只有精品66| 精品视频在线看| 久久亚洲精品小早川怜子| 一区二区三区在线观看国产 | 色综合一区二区| 日韩天堂在线观看| 亚洲品质自拍视频| 黄色日韩三级电影| 欧美视频日韩视频| 欧美国产精品一区二区三区| 午夜成人在线视频| 不卡高清视频专区| 欧美成人免费网站| 夜夜爽夜夜爽精品视频| 国产精品18久久久| 69堂成人精品免费视频| 亚洲日本在线看| 国产精品自在欧美一区| 欧美色综合影院| 国产精品久久久久一区二区三区| 欧美a级理论片| 在线一区二区三区| 中文字幕成人av| 久久草av在线| 亚洲乱码中文字幕| 国产乱码精品一区二区三区五月婷| 欧美综合欧美视频| 1000部国产精品成人观看| 久久国产精品区| 欧美男生操女生| 一区二区日韩av| eeuss影院一区二区三区| 久久只精品国产| 另类综合日韩欧美亚洲| 精品视频1区2区3区| 亚洲精品一二三| 播五月开心婷婷综合| 国产亚洲成aⅴ人片在线观看| 开心九九激情九九欧美日韩精美视频电影 | 日本韩国欧美一区| 国产精品麻豆欧美日韩ww| 精品在线一区二区三区| 日韩一级片网址| 日欧美一区二区| 欧美精品高清视频| 欧美精品乱人伦久久久久久| 国产精品对白交换视频| 高清在线不卡av| 欧美性生活一区| 中文字幕一区二区三区在线不卡 | 国产一区二区中文字幕| 欧美成人aa大片| 精品亚洲成a人在线观看| 日韩精品中午字幕| 久久精品国产亚洲aⅴ| 在线精品视频小说1| 成人福利视频在线| 国产福利视频一区二区三区| 六月丁香综合在线视频| 三级一区在线视频先锋| 亚洲主播在线观看| 一区二区在线电影| 亚洲欧美色图小说| 日韩久久一区二区| 中文字幕一区二区三区在线观看| 中文字幕欧美国产| 国产欧美一区二区三区在线看蜜臀 | 亚洲免费伊人电影| 中文字幕第一区第二区| 国产欧美一区二区精品久导航 | 日韩精品视频网| 亚洲午夜精品在线| 亚洲一区二区三区自拍| 一个色综合网站| 亚洲综合色成人| 五月婷婷综合在线| 青青草国产精品97视觉盛宴 | 国产人久久人人人人爽| 中文字幕不卡的av| 综合色中文字幕| 亚洲伊人伊色伊影伊综合网| 一区二区三区av电影| 天堂在线亚洲视频| 韩国av一区二区三区在线观看| 经典三级在线一区| 成人精品视频一区二区三区| 97se亚洲国产综合自在线| 在线中文字幕一区| 欧美一区二区日韩| 久久综合久久综合久久| 欧美国产精品中文字幕| 亚洲三级理论片| 午夜精品福利视频网站| 老司机一区二区| caoporn国产精品| 欧美日韩国产色站一区二区三区| 日韩一级免费一区| 国产精品国产成人国产三级| 亚洲一区二区中文在线| 精品一区二区三区免费播放 | 亚洲国产综合91精品麻豆| 捆绑紧缚一区二区三区视频 | 欧美日韩综合色| 久久久久高清精品| 亚洲精品你懂的| 男男视频亚洲欧美| 91小宝寻花一区二区三区| 91精品麻豆日日躁夜夜躁| 国产午夜三级一区二区三| 亚洲第一精品在线| 成人夜色视频网站在线观看| 欧美伊人久久久久久午夜久久久久| 精品国产乱码久久久久久闺蜜| 亚洲欧美另类小说| 国产一区二区在线视频| 欧美视频在线播放| 国产精品久久久久久久久图文区|