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

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

?? winsock.bas

?? Windows網絡編程技術源碼 (是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一区二区三区免费野_久草精品视频
久久99精品国产.久久久久久| 亚洲女同一区二区| 欧美日韩一区二区三区免费看| 成人福利电影精品一区二区在线观看| 久久aⅴ国产欧美74aaa| 蜜芽一区二区三区| 看电影不卡的网站| 9久草视频在线视频精品| 国产成都精品91一区二区三| 国产成人精品免费| 91免费看视频| 欧美性淫爽ww久久久久无| 色老汉一区二区三区| 欧美日韩精品一区二区三区| 欧美久久高跟鞋激| 一本色道久久综合亚洲精品按摩| 在线观看日产精品| 欧美一级二级三级乱码| 精品久久久久久无| 国产精品免费视频网站| 樱桃视频在线观看一区| 首页欧美精品中文字幕| 国产一区二区视频在线| 成a人片国产精品| 欧美视频完全免费看| 日韩美女一区二区三区四区| 国产拍欧美日韩视频二区| 亚洲人成影院在线观看| 欧美aaa在线| 成人手机在线视频| 欧美午夜不卡在线观看免费| 欧美r级电影在线观看| 国产精品乱人伦中文| 亚洲高清在线精品| 国产伦精品一区二区三区视频青涩 | 中文字幕一区免费在线观看| 成人欧美一区二区三区小说 | 日韩一级大片在线| 日本一区二区综合亚洲| 亚洲国产欧美另类丝袜| 欧美午夜精品久久久久久孕妇| 日韩一区国产二区欧美三区| 国产精品色婷婷| 日本色综合中文字幕| 97se亚洲国产综合自在线| 91精品一区二区三区久久久久久| 国产精品美女久久久久久久| 午夜精品123| 91在线观看成人| 久久亚洲影视婷婷| 亚洲成人一区二区| 99re成人精品视频| 国产亚洲福利社区一区| 日韩av一级电影| 色婷婷综合久久久久中文一区二区 | 欧美性做爰猛烈叫床潮| 国产精品入口麻豆原神| 国产在线精品免费| 在线播放日韩导航| 亚洲一区二区三区激情| 91色乱码一区二区三区| 日本一区二区视频在线观看| 日本一区中文字幕| 欧美日韩你懂的| 亚洲精品一二三四区| 国产成人免费视频一区| 日韩欧美一区中文| 亚洲精品老司机| 成人免费av在线| 国产精品私人影院| 国产黄人亚洲片| 亚洲精品在线三区| 久久成人综合网| 精品美女在线播放| 国产一区二区三区国产| 日韩美一区二区三区| 久久99这里只有精品| 久久久综合视频| 精品写真视频在线观看 | 久久众筹精品私拍模特| 久久er精品视频| 久久久久久麻豆| 国产91精品精华液一区二区三区 | 亚洲欧洲精品成人久久奇米网 | 一区二区三区资源| 色妞www精品视频| 亚洲精品大片www| 欧美色图天堂网| 日韩 欧美一区二区三区| 日韩亚洲欧美高清| 国产成人亚洲精品狼色在线| 中文字幕高清一区| 欧美中文字幕久久| 美女网站色91| 欧美国产精品v| 91麻豆精品视频| 亚洲国产aⅴ天堂久久| 91精品国产综合久久久蜜臀粉嫩| 久久超级碰视频| 亚洲国产精品激情在线观看| 91麻豆产精品久久久久久| 丝瓜av网站精品一区二区| 欧美精品一区二区三区一线天视频 | 蜜乳av一区二区三区| 欧美xxx久久| 91在线播放网址| 蜜桃一区二区三区在线| 中文字幕一区二区视频| 欧美日韩精品福利| 国产99久久久久| 亚洲成人精品一区二区| 久久久噜噜噜久久人人看| 欧美最猛性xxxxx直播| 精品一区二区三区久久久| 国产精品盗摄一区二区三区| 欧美一区欧美二区| 99re热这里只有精品视频| 理论电影国产精品| 亚洲视频一二三| 欧美va天堂va视频va在线| 欧洲亚洲精品在线| 国产精品一线二线三线| 日本成人在线电影网| 国产精品毛片大码女人| 日韩一区二区电影在线| 在线视频一区二区三| 国产成人aaa| 黄一区二区三区| 一区二区三区在线观看欧美| 国产日韩成人精品| 欧美一区日韩一区| 欧美最猛性xxxxx直播| 99re视频这里只有精品| 风流少妇一区二区| 久久精品国产一区二区三区免费看| 悠悠色在线精品| 亚洲欧洲国产日本综合| 亚洲国产成人私人影院tom| 精品奇米国产一区二区三区| 精品视频1区2区| 在线免费视频一区二区| 91社区在线播放| 不卡区在线中文字幕| 国产一区二区毛片| 国产一区二区三区在线观看免费视频| 日韩在线a电影| 日韩专区欧美专区| 7777女厕盗摄久久久| 91精品午夜视频| 国产成人精品影视| 亚洲自拍欧美精品| 综合分类小说区另类春色亚洲小说欧美| 欧美变态凌虐bdsm| 精品欧美一区二区在线观看| 在线综合+亚洲+欧美中文字幕| 欧美色偷偷大香| 欧美乱熟臀69xxxxxx| 欧美日韩国产精品成人| 欧美情侣在线播放| 日韩三级视频在线看| 日韩一区二区麻豆国产| 久久久精品蜜桃| 国产欧美日韩综合| 亚洲欧洲精品成人久久奇米网| 亚洲精品五月天| 亚洲欧美电影一区二区| 亚洲一区av在线| 天堂成人免费av电影一区| 美女在线一区二区| 国产精品一品视频| av综合在线播放| 欧美视频精品在线观看| 欧美刺激脚交jootjob| 久久精品视频在线看| 国产精品成人免费精品自在线观看| 亚洲免费观看高清在线观看| 亚洲一区自拍偷拍| 蜜臀久久99精品久久久画质超高清| 精品一二三四区| 99久久免费视频.com| 91精品国产综合久久小美女| 久久日韩精品一区二区五区| 亚洲日本va在线观看| 日韩精品欧美成人高清一区二区| 国产乱子伦一区二区三区国色天香| 成人黄色大片在线观看| 欧美日韩久久不卡| 久久精品视频网| 亚洲国产婷婷综合在线精品| 九九**精品视频免费播放| 成人av网在线| 制服丝袜激情欧洲亚洲| 中文字幕在线观看不卡| 日韩在线一区二区| 91在线观看一区二区| 精品少妇一区二区三区在线视频 | 51午夜精品国产| 国产人成亚洲第一网站在线播放 | 另类欧美日韩国产在线| 99久久精品国产一区二区三区|