⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.frm

📁 < WINDOWS网络编程>>英文版,一本详细讲解WINDOWS平台下网络编程的国外经典书籍,适合英文水平高的牛人
💻 FRM
📖 第 1 页 / 共 2 页
字号:
VERSION 5.00
Begin VB.Form Form1 
   Caption         =   "Form1"
   ClientHeight    =   5490
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   11130
   LinkTopic       =   "Form1"
   ScaleHeight     =   5490
   ScaleWidth      =   11130
   StartUpPosition =   3  'Windows Default
   Begin VB.CheckBox chkUnique 
      Caption         =   "Unique (uncheck for group)"
      Height          =   255
      Left            =   6000
      TabIndex        =   24
      Top             =   120
      Value           =   1  'Checked
      Width           =   2655
   End
   Begin VB.TextBox txtLocalName 
      Height          =   285
      Left            =   4200
      TabIndex        =   23
      Text            =   "LocalName"
      Top             =   120
      Width           =   1575
   End
   Begin VB.ListBox recvList 
      Height          =   4740
      Left            =   7320
      TabIndex        =   21
      Top             =   600
      Width           =   3615
   End
   Begin VB.Frame Frame4 
      Caption         =   "Step 4: Select I/O attribute"
      Height          =   1095
      Left            =   3960
      TabIndex        =   16
      Top             =   1800
      Width           =   3255
      Begin VB.TextBox txtDelay 
         Height          =   285
         Left            =   2760
         TabIndex        =   19
         Text            =   "0"
         Top             =   720
         Width           =   375
      End
      Begin VB.TextBox txtNumDatagram 
         Height          =   285
         Left            =   2760
         TabIndex        =   17
         Text            =   "5"
         Top             =   240
         Width           =   375
      End
      Begin VB.Label Label4 
         Caption         =   "delay between sends"
         Height          =   255
         Left            =   120
         TabIndex        =   20
         Top             =   720
         Width           =   2055
      End
      Begin VB.Label Label3 
         Caption         =   "num of datagrams to send or recv:"
         Height          =   255
         Left            =   120
         TabIndex        =   18
         Top             =   360
         Width           =   2895
      End
   End
   Begin VB.Frame Frame3 
      Caption         =   "Step 2: Select role"
      Height          =   1215
      Left            =   1440
      TabIndex        =   11
      Top             =   480
      Width           =   5775
      Begin VB.CheckBox chkRecvAny 
         Caption         =   "Recv on any name?"
         Height          =   255
         Left            =   120
         TabIndex        =   15
         Top             =   720
         Width           =   1935
      End
      Begin VB.TextBox txtRecipient 
         Height          =   285
         Left            =   2280
         TabIndex        =   14
         Text            =   "RemoteName"
         Top             =   720
         Width           =   2535
      End
      Begin VB.OptionButton optSender 
         Caption         =   "Sender"
         Height          =   255
         Left            =   2280
         TabIndex        =   13
         Top             =   360
         Width           =   855
      End
      Begin VB.OptionButton optReceiver 
         Caption         =   "Receiver"
         Height          =   255
         Left            =   120
         TabIndex        =   12
         Top             =   360
         Value           =   -1  'True
         Width           =   1215
      End
      Begin VB.Label Label6 
         Caption         =   "Specify remote NB name, unnecessary for broadcast"
         Height          =   495
         Left            =   3480
         TabIndex        =   25
         Top             =   240
         Width           =   2175
      End
      Begin VB.Line Line1 
         X1              =   2160
         X2              =   2160
         Y1              =   120
         Y2              =   1200
      End
   End
   Begin VB.Frame Frame2 
      Caption         =   "Step 3: Select opeation mode"
      Height          =   1095
      Left            =   1440
      TabIndex        =   8
      Top             =   1800
      Width           =   2415
      Begin VB.OptionButton optBroadcast 
         Caption         =   "Broadcast Datagram"
         Height          =   255
         Left            =   120
         TabIndex        =   10
         Top             =   720
         Width           =   1935
      End
      Begin VB.OptionButton optDirect 
         Caption         =   "Direct Datagram"
         Height          =   255
         Left            =   120
         TabIndex        =   9
         Top             =   360
         Value           =   -1  'True
         Width           =   1815
      End
   End
   Begin VB.Frame Frame1 
      Caption         =   "Option for send, do you want to send on a specific lana"
      Height          =   855
      Left            =   1440
      TabIndex        =   4
      Top             =   3000
      Width           =   5775
      Begin VB.TextBox txtOneLana 
         Height          =   285
         Left            =   4320
         TabIndex        =   6
         Text            =   "0"
         Top             =   360
         Width           =   855
      End
      Begin VB.CheckBox chkOneLana 
         Caption         =   "Yes"
         Height          =   255
         Left            =   360
         TabIndex        =   5
         Top             =   360
         Width           =   855
      End
      Begin VB.Label Label2 
         Caption         =   "specify which lana to send from"
         Height          =   255
         Left            =   1320
         TabIndex        =   7
         Top             =   360
         Width           =   2535
      End
   End
   Begin VB.ListBox ListLana 
      Height          =   3375
      Left            =   120
      TabIndex        =   2
      Top             =   480
      Width           =   975
   End
   Begin VB.CommandButton cmdSendRecv 
      Caption         =   "Send/Recv"
      Height          =   855
      Left            =   360
      TabIndex        =   1
      Top             =   4200
      Width           =   3015
   End
   Begin VB.CommandButton Command1 
      Caption         =   "NCBASTAT on LANA 0"
      Height          =   855
      Left            =   3720
      TabIndex        =   0
      Top             =   4200
      Width           =   2775
   End
   Begin VB.Label Label5 
      Caption         =   "Step 1: Specify the local NB name:"
      Height          =   255
      Left            =   1560
      TabIndex        =   22
      Top             =   120
      Width           =   2775
   End
   Begin VB.Label Label1 
      Caption         =   "Available Lana"
      Height          =   255
      Left            =   120
      TabIndex        =   3
      Top             =   120
      Width           =   1215
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Dim bOneLana As Boolean
Dim dwOneLana As Long
Dim bBroadcast As Boolean
Dim bSender As Boolean
Dim bUniqueName As Boolean
Dim bRecvAny As Boolean
Dim dwNumDatagrams As Long
Dim dwDelay As Long
Dim dwNum(255) As Long
Dim lenum As LANA_ENUM
Dim dwBytesRead As Long, dwErr As Long
Dim szMessage As String
Dim i As Long, j As Long
Dim byteMessage As UserBuffer 'used in sends

Dim byteRecvMessage(254) As UserBuffer 'used in recvs
Dim ncbRecv(254) As NCB ' used in recv
Dim eventRecv(254) As Long 'used in recv




Private Sub chkOneLana_Click()
    bOneLana = CBool(chkOneLana.Value)
    dwOneLana = CLng(txtOneLana.Text)
    End Sub

Private Sub chkRecvAny_Click()
bRecvAny = CBool(chkRecvAny.Value)
End Sub

Private Sub chkUnique_Click()
    bUniqueName = CBool(chkUnique.Value)
End Sub




   Sub Command1_Click()
       Dim myNcb As NCB
       Dim bRet As Byte
       ZeroMemory myNcb, Len(myNcb)
       myNcb.ncb_command = NCBRESET
       bRet = Netbios(myNcb)

       myNcb.ncb_command = NCBASTAT
       myNcb.ncb_lana_num = 0
       myNcb.ncb_callname(0) = Asc("*")

       Dim myASTAT As ASTAT, tempASTAT As ASTAT
       Dim pASTAT As Long
       myNcb.ncb_length = Len(myASTAT)
       Debug.Print Err.LastDllError
       pASTAT = HeapAlloc(GetProcessHeap(), HEAP_GENERATE_EXCEPTIONS _
                Or HEAP_ZERO_MEMORY, myNcb.ncb_length)
       If pASTAT = 0 Then
          Debug.Print "memory allcoation failed!"
          Exit Sub
       End If
       myNcb.ncb_buffer = pASTAT
       bRet = Netbios(myNcb)
       Debug.Print Err.LastDllError
       CopyMemory myASTAT, myNcb.ncb_buffer, Len(myASTAT)
       MsgBox Hex(myASTAT.adapt.adapter_address(0)) & " " & _
              Hex(myASTAT.adapt.adapter_address(1)) _
              & " " & Hex(myASTAT.adapt.adapter_address(2)) & " " _
              & Hex(myASTAT.adapt.adapter_address(3)) _
              & " " & Hex(myASTAT.adapt.adapter_address(4)) & " " _
              & Hex(myASTAT.adapt.adapter_address(5))
       HeapFree GetProcessHeap(), 0, pASTAT
   End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -