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

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

?? winsock.bas

?? 本文件包含三本經典的網絡編程書籍 一本是英文的。并附有其中的所有實例源碼。 本著來源于網絡
?? 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在线| 久久久不卡网国产精品二区| 日韩欧美在线一区二区三区| 欧美综合天天夜夜久久| 色久优优欧美色久优优| 色国产综合视频| 欧美揉bbbbb揉bbbbb| 欧美视频在线观看一区| 欧美日韩不卡一区二区| 欧美日韩国产欧美日美国产精品| 欧美日韩一区三区四区| 在线播放一区二区三区| 欧美一区欧美二区| 精品国产一区二区国模嫣然| 精品日韩一区二区| 国产网站一区二区三区| 中文字幕一区二区三区四区| 一区二区三区av电影| 亚洲va国产va欧美va观看| 麻豆91在线观看| 国产一区二区0| 日本久久一区二区三区| 欧美日韩精品欧美日韩精品一综合| 制服丝袜日韩国产| 久久一二三国产| 亚洲婷婷综合久久一本伊一区| 亚洲一区二区欧美日韩| 日韩二区在线观看| 成人免费观看视频| 欧美午夜精品理论片a级按摩| 日韩一区二区视频| 国产女主播一区| 天天综合日日夜夜精品| 国产高清精品在线| 91久久久免费一区二区| 2020国产精品自拍| 一区二区三区日本| 国模冰冰炮一区二区| 色婷婷精品大在线视频| 精品免费日韩av| 中文字幕不卡在线播放| 日韩不卡一区二区| 91蝌蚪porny九色| 久久久美女毛片| 性做久久久久久| 不卡av免费在线观看| 欧美成人一区二区三区| 伊人色综合久久天天人手人婷| 久久精品久久99精品久久| 一本色道a无线码一区v| www久久精品| 天天av天天翘天天综合网| 成人app下载| 久久天堂av综合合色蜜桃网| 性欧美大战久久久久久久久| av一二三不卡影片| 337p粉嫩大胆色噜噜噜噜亚洲| 亚洲国产精品综合小说图片区| 高清久久久久久| 精品国产百合女同互慰| 亚洲成av人片www| 色美美综合视频| 中文字幕av在线一区二区三区| 麻豆国产欧美日韩综合精品二区 | 欧美中文字幕亚洲一区二区va在线| 欧美精品一区二| 久久成人羞羞网站| 欧美日韩一区二区三区四区五区 | 国产欧美精品一区二区色综合朱莉 | 欧美美女一区二区在线观看| 亚洲精品免费在线观看| 不卡的av中国片| 国产精品久久久久久久蜜臀| 韩国v欧美v日本v亚洲v| 精品黑人一区二区三区久久| 奇米一区二区三区| 日韩精品一区二| 极品少妇一区二区| 久久一区二区三区四区| 国产在线视频不卡二| 久久久久9999亚洲精品| 国产69精品久久久久777| 国产日产欧美精品一区二区三区| 国产精品综合在线视频| 日本一区二区三区在线观看| 国产成人免费xxxxxxxx| 国产精品素人视频| 色吧成人激情小说| 亚洲大片免费看| 日韩一级黄色片| 精品一区二区三区蜜桃| 国产免费成人在线视频| 日本久久一区二区三区| 日av在线不卡| 欧美激情综合五月色丁香 | 亚洲精品国产品国语在线app| 欧美伊人精品成人久久综合97| 日韩在线一区二区| 精品国产sm最大网站| 国产成人精品www牛牛影视| 亚洲欧美日韩人成在线播放| 欧美日韩在线观看一区二区 | 免费观看一级欧美片| 久久久国产精华| 欧美性大战久久| 国产一区三区三区| 亚洲欧美一区二区不卡| 日韩三级电影网址| 99久久777色| 日韩国产欧美在线视频| 国产精品久久久久三级| 欧美一区二区三区公司| 成人一区二区三区| 亚洲国产精品自拍| 中文一区二区在线观看| 欧美情侣在线播放| 丁香婷婷综合五月| 青青草成人在线观看| 日韩一区中文字幕| 久久综合九色综合欧美98| 91福利视频网站| 国产成人精品www牛牛影视| 香蕉加勒比综合久久| 中文字幕中文字幕中文字幕亚洲无线| 欧美日韩国产成人在线免费| 国产a视频精品免费观看| 七七婷婷婷婷精品国产| 一区二区免费看| 国产精品私房写真福利视频| 欧美成人欧美edvon| 欧美日本一区二区三区四区| 91麻豆国产在线观看| 国产精品资源站在线| 蜜桃精品视频在线| 肉色丝袜一区二区| 亚洲伦理在线精品| 国产精品色哟哟| 久久久久久亚洲综合| 精品国产区一区| 欧美精品丝袜中出| 欧美最猛黑人xxxxx猛交| 91在线视频播放地址| 丁香五精品蜜臀久久久久99网站| 国产中文字幕精品| 国产在线精品一区二区三区不卡| 美国毛片一区二区| 日本伊人色综合网| 天天综合日日夜夜精品| 视频一区欧美日韩| 日韩影视精彩在线| 日韩国产高清在线| 毛片不卡一区二区| 蜜臀久久99精品久久久画质超高清 | 不卡一区中文字幕| aaa亚洲精品| 99re亚洲国产精品| 色乱码一区二区三区88| 欧美性色黄大片手机版| 欧美四级电影网| 日韩一级免费观看| 久久久精品影视| 中文字幕av资源一区| 亚洲乱码中文字幕| 亚洲国产你懂的| 麻豆成人综合网| 国产成人精品一区二区三区四区 | 欧美一区二区三区在线看| 日韩午夜在线影院| 久久精品视频免费观看| 国产精品久久毛片a| 亚洲综合在线观看视频| 日本aⅴ免费视频一区二区三区| 美国十次综合导航| 成人精品鲁一区一区二区| av中文字幕不卡| 欧美高清视频不卡网| 国产亚洲欧美激情| 亚洲精品福利视频网站| 婷婷国产v国产偷v亚洲高清| 国产精品系列在线播放| 99精品久久免费看蜜臀剧情介绍| 欧美影片第一页| 精品福利一区二区三区免费视频| 国产精品视频一区二区三区不卡 | 欧美高清视频一二三区| 欧美激情综合五月色丁香小说| 亚洲男人天堂av| 毛片av中文字幕一区二区| 成人黄色a**站在线观看| 欧美久久久影院| 国产精品理论片在线观看| 首页国产丝袜综合| 91在线观看下载| 日韩视频一区二区在线观看| 亚洲欧美日韩在线不卡| 久久se精品一区精品二区| 欧美三级日本三级少妇99| 久久精品亚洲一区二区三区浴池|