Solved

VB6 Winsock Telnet Recieve Problem

Posted on 2010-08-20
5
737 Views
Last Modified: 2013-12-26
Using VB6 and winsock to connect to a router and issue a command, currently I can -

1) Connect to a router
2) Issue a command
3) Disconnect

But what I would like to do it -

1) Connect to a router
2) Issue a command
3) Output the routers response to textfile1
4) Issue another command
5) Output the routers response to textfile2
6) Disconnect

Any ideas???????????
0
Comment
Question by:souldigital
  • 3
  • 2
5 Comments
 
LVL 17

Expert Comment

by:Zhaolai
ID: 33485398
Try this code (not tested), but logic should work:


Private bSecond As Boolean

Private Sub Command1_Click()
    bSecond = False
    Winsock1.Close
    Winsock1.Connect "10.10.0.60", 23
End Sub

Private Sub Winsock1_Connect()
    If bSecond = False Then
        Winsock1.SendData "strdata1"
    End If
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim strData As String, strFile As String
    strData = String(bytesTotal, Chr$(0))
    Winsock1.GetData strData, vbString, bytesTotal
    If bSecond = False Then
        strFile = "c:\test1.txt"
    Else
        strFile = "c:\test2.txt"
    End If
    WriteToFile strFile, strData
End Sub

Private Sub WriteToFile(strFile As String, strData As String)
    Dim oFSO As New Scripting.FileSystemObject
    Dim oStream As TextStream
    Set oStream = oFSO.OpenTextFile(strFile, ForWriting)
    oStream.Write strData
    oStream.Close
    If bSecond = False Then
        Winsock1.SendData "strdata2"
        bSecond = True
    Else
        Winsock1.Close
    End If
    Set oFSO = Nothing
End Sub

Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
    MsgBox "Error occurred: " & Description
End Sub

Open in new window

0
 

Author Comment

by:souldigital
ID: 33495197
No does not seem to work, I get the error sub or function not defined.
0
 
LVL 17

Expert Comment

by:Zhaolai
ID: 33495458
Which sub or function not defined?
0
 

Author Comment

by:souldigital
ID: 33495710
Private Sub WriteToFile(strFile As String, strData As String)
   
0
 
LVL 17

Accepted Solution

by:
Zhaolai earned 500 total points
ID: 33496867
Try this:

Private Sub WriteToFile(strFile As String, strData As String)
    Dim oFSO As Object
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Dim oStream As Object
    Set oStream = oFSO.OpenTextFile(strFile, 2)
    oStream.Write strData
    oStream.Close
    If bSecond = False Then
        Winsock1.SendData "strdata2"
        bSecond = True
    Else
        Winsock1.Close
    End If
    Set oFSO = Nothing
End Sub

Open in new window

0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Clear Filter 8 60
Use GPO script to report finding a certain file 16 15
reboot server with scheduled time and week base 4 35
Index Match Formula VBA 6 21
This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
Deploying a Microsoft Access application in a Citrix environment is not difficult but takes a few steps. However, Citrix system people are often of little help, as they typically know next to nothing about Access. The script provided here will take …
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question