Distinct offers Network Monitor, the ONLY natural language Protocol Analyzer, ONC RPC for C++, .NET and Java, and IntelliTerm, the fastest Terminal Emulator for TN3270, TN5250 and VT420 on the market.

Distinct VIT: Ftp Client: OnReceiveMarkerB

   Products   Downloads   Sales   Support   About us
  VIT



        
 
Summary

Marker data during event based transfer has been received as binary.

Description

The OnReceiveMarkerB event occurs during an event based transfer of a file in block mode. OnReceiveMarkerB events are interleaved with OnReceiveB events depending upon the marker frequency. To do an event based Get call the GetFileWithRestart method with the Localfile parameter set to an empty string. To do an event based Put call the PutFileWithRestart method with the LocalFile parameter set to an empty string. This means that you must call the BolckMode method and the EventMode method and set the Use Variant property to TRUE before initiating the file transfer.

Instead of writing incoming marker data from server directly to a local marker file, an event-based operation notifies the application with one or more OnReceiveMarkerB events. The event notifies the application how many bytes of marker data are ready to be retrieved. It is up to the application to call the ReceiveB method to retrieve and process the marker data. The buffer could, for example, be written to a disk file, and used in abnormal termination of file transfer. Function GetFileWithRestart or PutFileWithRestart could be used with marker to transfer the file from the termination point.

In the case of a Get, each marker should be stored together with the corresponding byte position of the block of data received in the local file immediately preceding the marker. If the file transfer is terminated abnormally, instead of transferring the whole file again, user can position the local file to the most recent position stored and send a GetFileWithRestart command with the corresponding stored marker.

In case of a Put operation, OnReceiveMarker delivers the local file position as well as server marker for that position. User should store this buffer in a file. The format of the buffer received is h-l=m, where h is the high word of local file position, l is the low word of local file position and m is the server marker for the local file position. In case of abnormal file transfer termination, user may position the local file to the most recent file position and send PutFileWithRestart function with the corresponding server marker.

If the application does not want to receive any more OnReceiveMarkerB events, then the transfer can be aborted by setting the FileAction property to FILE_ACTION_ABORT (or by calling the AbortFile method) during the OnReceiveMarkerB event.

While handling the OnReceiveMarkerB event, an application should not perform tasks, which have the potential of requiring a lot of time to complete, such as generating a message box. A substantial delay could cause the application to not receive subsequent OnReceiveMarkerB and OnReceiveB events.

Example

Sub FTPClient_OnReceiveMarkerB (Bytes As Long)
Dim Buffer() As Byte
Dim Siz As Long
Dim i As Integer

Siz = FTPClient.ReceiveB (Buffer, Bytes)
If Siz > 0 Then
Open "c:\abc.mar" For Binary Access Write As #1
For i = 1 To Siz
Put #1, i, Buffer (i)
Next i
Close #1
Else
MsgBox "Cannot receive binary marker data", 64, "Sample Program"
End If
End Sub



Browse FAQ

Related Products
Mail Objects

Recommended Add-On
Network Monitor,
Protocol Analyzer


Raves
"The night before I went on summer holiday we had to make some 'last minute' configuration changes to approx. 300 routers, a tedious job to do manually with telnet. We went along with MS Excel containing a list of IP-adresses to the routers, and the VIT telnet-component. One hour later the VBA-application (small is beautiful) was working, and after another hour all of our routers were updated with the new configuration. I just say a big "Thanks" to you all for a good sleep that night."
Eirik Brendholen, Ergo Integration AS

"We conducted a test session to compare the performance of similar products, and Distinct's product was better!" [more]
Dr. Shyam Sunder, Carnegie Mellon University

"Together with Distinct, we were able to offer our users an ideal soution to enabling them to connect to Yahoo! Pager, and to do so both quickly and reliably." [more]
Brian Park,
Producer of Yahoo! Pager, Yahoo! Inc.


  9/8/2008   Legal notices | PRIVACY Policy | Networking News |