主なFTP操作関数
| 関数名 | 機能 |
|---|---|
| InternetOpen | WinInetのセッションを開始します。 |
| InternetConnect | サーバーに接続します。 |
| InternetCloseHandle | ハンドルをクローズします。 |
| FtpSetCurrentDirectory | サーバーのカレントディレクトリを変更します。 |
| FtpGetCurrentDirectory | サーバーのカレントディレクトリを取得します。 |
| FtpGetFile | サーバーのファイルをローカルディスクに保存します。 |
| FtpPutFile | サーバーにファイルを保存します。 |
| FtpDeleteFile | サーバーのファイルを削除します。 |
| FtpFindFirstFile | サーバーのディレクトリ内のファイルを検索します。 |
| InternetFindNextFile | FtpFindFirstFileに続けて次のファイルを検索します。 |
| FtpCreateDirectory | サーバーにディレクトリを作成します。 |
| FtpRemoveDirectory | サーバーのディレクトリを削除します。 |
転送モードアスキーで送信。
//lpszServerName: サーバー名
//lpszUsername : ユーザー名
//lpszPassword : パスワード
//lpszFileName : ローカルファイル名
//lpszNewFile : サーバーに保存するファイル名
//戻り値 : 成功した場合TRUE
BOOL PutFile(LPCTSTR lpszServerName, LPCTSTR lpszUsername, LPCTSTR lpszPassword, LPCTSTR lpszFileName, LPCTSTR lpszNewFile)
{
BOOL bResult = FALSE;
HINTERNET hInternet = InternetOpen(TEXT("Agent"), INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
if(hInternet != NULL) {
HINTERNET hConnect = InternetConnect(hInternet, lpszServerName, INTERNET_INVALID_PORT_NUMBER, lpszUsername, lpszPassword, INTERNET_SERVICE_FTP, 0, 0);
if(hConnect != NULL) {
bResult = FtpPutFile(hConnect, lpszFileName, lpszNewFile, FTP_TRANSFER_TYPE_ASCII, 0);
InternetCloseHandle(hConnect);
}
InternetCloseHandle(hInternet);
}
return bResult;
}