PRB: ITC Cannot Perform ASCII-type FTP TransferID: Q188956
|
When you use the Microsoft Internet Transfer Control (ITC) to transfer text files to or from certain servers, the resulting file appears corrupted. It might appear to have extra or missing characters, or consist of completely meaningless garbage data.
The Microsoft Internet Transfer Control does not offer the option of an ASCII-type FTP file transfer. This can make it impossible to transfer text files to or from certain servers using this control.
Because the control does not offer this functionality, it cannot be used in
situations where an ASCII-type transfer is required. One possible
workaround is to call the Win32 Internet (WinInet) FTP APIs directly. These
APIs are used by the ITC, and offer the option of either a binary or ASCII
transfer, even though an ASCII-type transfer option is not exposed in the
ITC.
For an example of how to call the WinInet FTP APIs directly from Visual
Basic, see the following article(s) in the Microsoft Knowledge Base:
Q175179 : FILE: VBFTP.EXE: Implementing FTP Using WinInet API from VB
This behavior is by design. The Internet Transfer Control is not a complete implementation of the FTP protocol.
The FTP protocol offers two types of transfers: binary and ASCII. In a
binary download (which is always used by the ITC), the FTP server sends to
the client the exact contents of a file. In a binary upload, the FTP server
stores exactly what the client sends. This is desirable behavior for most
types of files, such as executable programs, images, word processor
documents, and so on.
In contrast, during an ASCII transfer, the FTP server converts between
standard ASCII (which is being sent to or received from the client), and
the internal representation of text used on the server. The differences may
be conventions for marking the end of a line with carriage-return and
linefeed characters, or the server may use an entirely different text
encoding method (usually EBCDIC, commonly used on IBM mainframe and
midrange systems). If a server stores text files in a format other than
standard ASCII, transferring it with the binary transfer type results in
what appears to be "corrupt" data in the destination file, since the
character set translation does not take place.
Additional query words: kbVBp500 kbDSupport kbdsi
Keywords :
Version : WINDOWS:5.0
Platform : WINDOWS
Issue type : kbprb
Last Reviewed: May 14, 1999