119 |
|
Attribute VB_Creatable = False |
120 |
|
Attribute VB_PredeclaredId = True |
121 |
|
Attribute VB_Exposed = False |
122 |
+ |
Dim filterHostname As String |
123 |
+ |
Dim filterTCPPort As String |
124 |
+ |
Dim filterUDPPort As String |
125 |
+ |
|
126 |
+ |
Dim protocolVersion As String |
127 |
+ |
Dim connected As Boolean |
128 |
|
Dim responseNumber As Integer |
129 |
|
|
130 |
|
|
131 |
|
Private Sub Command1_Click() |
132 |
|
|
133 |
< |
' Use the first winsock control to send |
128 |
< |
' a UDP packet. |
133 |
> |
' Use the first winsock control to send a UDP packet. |
134 |
|
Winsock1.RemoteHost = Text3.Text |
135 |
|
Winsock1.RemotePort = Text2.Text |
136 |
|
Winsock1.SendData Text1.Text |
149 |
|
x = MsgBox("not implemented..") |
150 |
|
End Sub |
151 |
|
|
152 |
+ |
Private Sub Form_Load() |
153 |
+ |
protocolVersion = "1.1" |
154 |
+ |
End Sub |
155 |
+ |
|
156 |
|
Private Sub Winsock2_Connect() |
157 |
|
|
158 |
|
responseNumber = 0 |
174 |
|
response = Replace(response, Chr(10), "") |
175 |
|
Text4.Text = Text4.Text & vbCrLf & response |
176 |
|
|
177 |
< |
' Decide what to send back to the server. |
178 |
< |
Select Case responseNumber |
179 |
< |
Case 1: |
180 |
< |
Winsock2.SendData "LASTMODIFIED" & vbCrLf |
181 |
< |
Case 2: |
182 |
< |
Winsock2.SendData "FILELIST" & vbCrLf |
183 |
< |
Case 3: |
184 |
< |
Winsock2.SendData "UDPUpdateTime" & vbCrLf |
185 |
< |
Case 4: |
186 |
< |
Winsock2.SendData "TCPUpdateTime" & vbCrLf |
187 |
< |
Case 5: |
188 |
< |
Winsock2.SendData "ENDCONFIG" & vbCrLf |
189 |
< |
Case 6: |
190 |
< |
Winsock2.SendData "FILTER" & vbCrLf |
191 |
< |
Case 7: |
192 |
< |
Winsock2.SendData "END" & vbCrLf |
193 |
< |
Case 8: |
194 |
< |
Winsock2.Close |
195 |
< |
Text4.Text = Text4.Text & vbCrLf & " <closed>" |
196 |
< |
End Select |
177 |
> |
If connected = False Then |
178 |
> |
' Perform TCP configuration (1.1) |
179 |
> |
On Error GoTo configError |
180 |
> |
Select Case responseNumber |
181 |
> |
Case 1: |
182 |
> |
If Not response = "OK" Then GoTo configError |
183 |
> |
Winsock2.SendData "LASTMODIFIED" & vbCrLf |
184 |
> |
Case 2: |
185 |
> |
If response = "ERROR" Then GoTo configError |
186 |
> |
Winsock2.SendData "FILELIST" & vbCrLf |
187 |
> |
Case 3: |
188 |
> |
If response = "ERROR" Then GoTo configError |
189 |
> |
Winsock2.SendData "UDPUpdateTime" & vbCrLf |
190 |
> |
Case 4: |
191 |
> |
If response = "ERROR" Then GoTo configError |
192 |
> |
Winsock2.SendData "TCPUpdateTime" & vbCrLf |
193 |
> |
Case 5: |
194 |
> |
If response = "ERROR" Then GoTo configError |
195 |
> |
Winsock2.SendData "ENDCONFIG" & vbCrLf |
196 |
> |
Case 6: |
197 |
> |
If Not response = "OK" Then GoTo configError |
198 |
> |
Winsock2.SendData "FILTER" & vbCrLf |
199 |
> |
Case 7: |
200 |
> |
'we got a filter list here. |
201 |
> |
readTo = 0 |
202 |
> |
' get hostname |
203 |
> |
readTo = InStr(1, response, ";", vbBinaryCompare) |
204 |
> |
filterHostname = Mid(response, 1, readTo - 1) |
205 |
> |
response = Mid(response, readTo + 1, Len(response)) |
206 |
> |
' get UDP Port number |
207 |
> |
readTo = InStr(1, response, ";") |
208 |
> |
filterUDPPort = Mid(response, 1, readTo - 1) |
209 |
> |
response = Mid(response, readTo + 1, Len(response)) |
210 |
> |
' get TCP Port number |
211 |
> |
filterTCPPort = response |
212 |
> |
Winsock2.SendData "END" & vbCrLf |
213 |
> |
Case 8: |
214 |
> |
If Not response = "OK" Then GoTo configError |
215 |
> |
connected = True |
216 |
> |
responseNumber = 0 |
217 |
> |
Winsock2.Close |
218 |
> |
Text4.Text = Text4.Text & vbCrLf & " <closed>" |
219 |
> |
x = MsgBox("got config okay") |
220 |
> |
End Select |
221 |
> |
Else |
222 |
> |
' Perform a heartbeat (1.1) |
223 |
> |
On Error GoTo heartbeatError |
224 |
> |
Select Case responseNumber |
225 |
> |
Case 1: |
226 |
> |
|
227 |
> |
Case 2: |
228 |
> |
|
229 |
> |
Case 3: |
230 |
> |
|
231 |
> |
Case 4: |
232 |
> |
|
233 |
> |
Case 5: |
234 |
> |
|
235 |
> |
Case 6: |
236 |
> |
|
237 |
> |
Case 7: |
238 |
> |
|
239 |
> |
Case 8: |
240 |
> |
|
241 |
> |
End Select |
242 |
> |
|
243 |
> |
End If |
244 |
> |
|
245 |
> |
|
246 |
> |
Exit Sub |
247 |
> |
|
248 |
> |
configError: |
249 |
> |
x = MsgBox("error doing configuration") |
250 |
> |
heartbeatError: |
251 |
|
|
252 |
|
End Sub |