形式
#include <apihead.h>
#include <winsock.h>
SOCKET fts_ftp_open(const char *hostname)
機能
JP1/FTP Clientサービスとのコネクションを確立します。
引数
hostname
JP1/FTP Clientサービスが動作しているホストのホスト名を指定します。NULLを指定した場合は,自ホスト名(OSのhostnameコマンドが返すホスト名:物理ホスト)が仮定されます。
FTPクライアントでの自IPアドレスの指定を有効にした場合,この引数での指定がFTPクライアントの自IPアドレスになります。NULLを指定した場合は,FTPクライアントの物理ホストが仮定されます。
FTPクライアントでの自IPアドレスの指定を無効にした場合,FTPクライアントの自IPアドレスは,OSが自動的に割り当てるアドレスになります。FTPクライアントでの自IPアドレスの指定を有効にする定義については,「3.11 複数IPアドレス環境での使用」を参照してください。
注意事項
戻り値
ソケットハンドラ | 正常 |
INVALID_SOCKET | 異常 |
拡張エラー情報を取得するには,WSAGetLastError関数を呼び出します。拡張エラー情報の戻り値を次の表に示します。また,下記以外のエラーについては,winsockのマニュアルを参照してください。
拡張エラー情報の戻り値 (16進数,10進数) | 説明 | リトライの可否 |
---|---|---|
FTS_API_ERROR_NOTSTARTUP (0x2FFFFF00,805306112) | WSAStartup()がコールされていません。 | 否 |
FTS_API_ERROR_UNDEFFTSHOST (0x2FFFFF01,805306113) | 指定したホスト名はHOSTSファイルで定義されていません。 | 否 |
FTS_API_ERROR_CONNREFUSED (0x2FFFFF02,805306114) | 接続要求が拒否されました。JP1/File Transmission Server/FTP Clientサービスが開始されていない場合があります。 | 否 |
FTS_API_ERROR_TIMEOUT (0x2FFFFF03,805306115) | JP1/File Transmission Server/FTP Clientサービスへの接続要求がタイムアウトしました。JP1/File Transmission Server/FTP Clientサービスで接続処理に時間が掛かっているか,JP1/File Transmission Server/FTP Clientサービスが動作するマシンが停止している場合があります。 | 可 |
FTS_API_ERROR_UNREACH (0x2FFFFF04,805306116) | JP1/File Transmission Server/FTP Clientサービスが動作するホストへルーティングされていない場合があります。 | 否 |
FTS_API_ERROR_DISCONNECT (0x2FFFFF05,805306117) | JP1/File Transmission Server/FTP Clientサービスとのコネクションが切断されました。伝送要求を再度登録したい場合は,ftp_ftp_open()から処理をし直す必要があります。 | 否 |
FTS_API_ERROR_MEMORY (0x2FFFFF0B,805306123) | メモリを確保できません。 | 否 |
FTS_API_ERROR_UNDEFFTSSERV (0x2FFFFF0C,805306124) | SERVISESファイルでJP1/File Transmission Server/FTP Client (ftsc)の定義がされていません。 | 否 |
FTS_API_ERROR_MAXCONNECT (0x2FFFFF0F,805306127) | 同時に接続(fts_ftp_open()を発行)できるAPIの数(64)を超えました。ほかのAPIが接続を切断(fts_ftp_close()を発行)するまで接続できません。 | 可 |