Telnet ActiveX Control (w/ rsh)
Use the Telnet control (w/ rsh) to easily use the rsh protocol. With rsh, the client connects to the command processor shell on a UNIX host and executes a command to run a specified program. rsh is like rexec, but doesn't require a password.
Looking for the .NET version of this control?
Interface
Public Properties | |
AutoOption | Enables automatic Telnet option negotiation. |
Blocked | A True value indicates the control is currently executing a blocking method (Timeout is greater than 0), which has neither completed nor timed out with a ptTimeout error. |
Echo | Indicates that the remote host should echo all Telnet data it receives back to the client. |
KeepAlive | When set to True, the KEEPALIVE socket option is set to monitor dropped connections. This option can only be set when the State property is tcpConnected. |
LocalAddress | When the State property is tcpConnected, LocalAddress returns the address of the local host in dot notation (for example, nnn.nnn.nnn.nnn). When not connected, it returns an empty string. |
LocalPort | When the State property is tcpConnected, LocalPort returns the port number that the socket is bound to. When not connected, it returns 0. |
ReceiveBufferCount | Checks for the existence of data without removing it. |
Ref | Stores a reference to another object, data type, or value. |
RemoteAddress | Returns the address of the remote host in dot notation (i.e. nnn.nnn.nnn.nnn) when the State property is tcpConnected. |
RemotePort | Returns the port number of the remote host when the State property is tcpConnected. |
SendBufferCount | When the Send method is used, some data may be stored in a buffer and later submitted to the system. The Send event fires to indicate that the system has accepted the submitted data. |
Socket | System identifier assigned to the TCP connection. It is normally used to assume management of an accepted socket from the Daemon Control. |
State | Provides status information to the user interface. The State event fires to signal that this property has changed. |
TermType | Specifies the desired terminal type when the AutoOption property is True. |
Timeout | Controls the blocking behavior of methods that can be used in blocking and non-blocking ways. |
WindowSize | Specifies the desired window size when the AutoOption property is True. |
Public Methods | |
Abort | Abort any blocking method and release all system resources. |
About | Show the About Box. |
Close | Close the session and release all system resources. A single control can be used for many connections, one after the other. |
Connect | Establish a connection. The State property immediately changes to tcpConnecting and changes to tcpConnected when the connection is established. The State Property can be checked in the body of the State event, polled off a timer, or checked immediately after this method is used when a positive Timeout is specified. |
Receive | Receive an arbitrary amount of data. The specified String or Byte array is filled with bytes from the remote host. |
Rexec | Uses the remote execute protocol common to UNIX systems, which is intended to execute commands on a remote UNIX host. User and Password must match an account on the remote host. |
Rlogin | Uses the remote login protocol common to UNIX systems, which is similar to Telnet but simpler. It does not require Telnet option negotiation because it was intended for use between two UNIX systems. |
Rsh | Uses the remote shell protocol common to UNIX systems, which is intended to execute shell commands on a remote UNIX host. This method differs from the Rexec method (which implements the remote execute protocol) by being faster and not requiring a full login. For full description of the remote shell protocol, see the UNIX man pages. |
Search | Receive data up to and including a terminating sequence. The data stream is searched for the specified Token, and the specified string, byte array, or DartStream object is filled with the data stream up to and including the specified Token. |
Send | Send data after a connection is established. The Send event fires when Data is accepted by the system buffers. The SendBufferCount property indicates the number of bytes that have been submitted but have not yet been accepted by the system buffers. |
SendCommand | Send a Telnet command sequence. The Telnet Control ensures all formatting is accomplished correctly. This method is normally called from within the Command event. |
Trace | Start or stop the accumulation of trace or debug data. Once started, this method accumulates data until it is turned off. |
Public Events | |
Command | When the AutoOption property is set to False, the Telnet Control does not respond to Telnet commands, but instead fires the Command event. The application must have the appropriate code within this event to handle all option negotiation. The presence of this event allows the user to write sophisticated Telnet clients that can support any desired option, as well as Telnet server applications. The SendCommand method is used to send Telnet option negotiation sequences and commands. |
Error | Fires when an error condition occurs. |
Receive | Fires when ReceiveBufferCount changes. |
Send | Fires when the system accepts data for sending. |
State | Fires when the State property changes. |
Development Environments
- Visual Studio .NET (.NET Framework)
- Visual Basic (VB)
- Visual C++ (VC++)
- FoxPro
- PowerBuilder
- Delphi
- C++ Builder
- ASP
- Office 97/2000
Code Example
How easy is the Telnet Control to use to perform RSH? Check out the following VB example below which demonstrates Rsh functionality.
On Error GoTo OnError ' use intrinsic error handling
' Timeout after 10 seconds
Telnet1.Timeout = 10000
' Use Rsh method to reboot the UNIX host
Telnet1.Rsh "myhost", "myUsername", "reboot"
' didn't go to OnError, so we connected and executed
' command before 10 seconds elapsed!
Exit Sub
OnError: ' Any error jumps here
' no connection within 10 seconds, or other error (Tcp1.State is tcpClosed)
Debug.Print "Error #" + CStr(Err.Number) + ": " + Err.Description