A typical FTP client application creates a CInternetSession and a CFtpConnection object. Note that these MFC WinInet classes do not actually control the proxy type settings; IIS does.
Also, see these Knowledge Base articles:
- HOWTO: FTP with CERN-Based Proxy Using WinInet API (Article ID: Q166961) 
- SAMPLE: FTP with CERN-Based Password Protected Proxy (Article ID: Q216214) 
- Internet Services Manager Fails to Show Installed Proxy Services (Article ID: Q216802) 
The following table shows the steps you might perform in a typical FTP client application.
| Your goal | Actions you take | Effects | 
|---|---|---|
| Begin an FTP session. | Create a CInternetSession object. | Initializes WinInet and connects to server. | 
| Connect to an FTP server. | Returns a CFtpConnection object. | |
| Change to a new FTP directory on the server. | Changes the directory you are currently connected to on the server. | |
| Find the first file in the FTP directory. | Finds the first file. Returns FALSE if no files are found. | |
| Find the next file in the FTP directory. | Finds the next file. Returns FALSE if the file is not found. | |
| Open the file found by FindFile or FindNextFile for reading or writing. | Use CFtpConnection::OpenFile, using the file name returned by FindFile or FindNextFile. | Opens the file on the server for reading or writing. Returns a CInternetFile object. | 
| Read from or write to the file. | Reads or writes the specified number of bytes, using a buffer you supply. | |
| Handle exceptions. | Use the CInternetException class. | Handles all common Internet exception types. | 
| End the FTP session. | Dispose of the CInternetSession object. | Automatically cleans up open file handles and connections. | 
See Also
Concepts
Win32 Internet Extensions (WinInet)
Prerequisites for Internet Client Classes
Writing an Internet Client Application Using MFC WinInet Classes