WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.



Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

!Limitations of the WinInet FTP Functions


Limitations of WinInet FTP Functions

There are some known limitations to the WinInet FTP functions to be aware of. Before deciding to rely on WinInet for an application's FTP functionality, you should verify that the FTP functions work as expected with all required FTP servers.

Note: WinInet does not directly implement all of the functionality available through the FTP protocol. Most of the common activities such as uploading, downloading, renaming and deleting files, as well as enumerating directories, are available in this extender. However there are a number of other FTP commands that are not implemented directly, such as ACCOUNT, QUOTE, APPEND, BLOCK and ALLOCATE.

Beginning with Internet Explorer version 5.0 there is a new WinInet function, iFtpCmd, which allows you to functionally implement your own QUOTE command and send a specific command to the server. Previous versions of WinInet had no ability to send specific commands to the FTP server.

WinInet may have problems with some FTP servers. The FTP protocol is designed with the presumption that the output is viewed and viewed by a user, who can interpret the reply code and text.

WinInet FTP attempts to parse and interpret the reply. If an FTP server returns a nonstandard reply to WinInet, then WinInet may not be able to function properly. In addition, some servers may require a sequence of commands which is incompatible with WinInet. For instance, some servers require an account command be entered immediately upon logging on. Although you could enter an account (ACCT) command using the iFtpCmd function after you have already logged on, the FTP logon sequence implemented by WinInet is not flexible enough to enter an account (ACCT) command if required immediately by the server.

More Information
The following are a couple of instances where problems are known to occur. This is not a complete list, and you may encounter additional limitations not listed here.

VMS FTP servers:
WinInet FTP functions may not work with some FTP servers running on the VMS operating system. In particular, the FTP functions may fail with an error, or the data structure that returns file information may be blank or contain invalid data. For additional information, please see the following article in the Microsoft Knowledge Base:

Q168492 PRB: FTP WinInet APIs Report Error 12003

This problem occurs when text returned by the FTP server is in a format that WinInet cannot parse correctly. You can work around this problem by using the iFtpCmd function and sending a LIST command to the server. You could then either display the listing results in your application directly, or parse the returned data yourself.

Although WinInet FTP APIs are designed to work with FTP Gateway, functionality may be severely affected when CERN type proxy is used (iFtpPut, iFtpGet, etc. may not work correctly). Limited FTP functionality may be achieved over a CERN proxy with the iUrlOpen function. Additional issues may also arise if proxy requires a user name and password different than the user name and password required by the destination FTP server. For additional information on using FTP through a CERN proxy, please see the following articles in the Microsoft Knowledge Base:

Q166961 HOWTO: FTP with CERN-Based Proxy Using WinInet API

Q216214 SAMPLE: FTP with CERN-Based Password Protected Proxy

Article ID:   W15092
File Created: 2017:07:28:13:58:44
Last Updated: 2003:02:11:12:44:08