MFC WinInet クラスを使ってインターネット クライアント アプリケーションを作成する方法
すべてのインターネット クライアント アプリケーションの基礎は、インターネット セッションです。 MFC は、CInternetSession クラスのオブジェクトとしてインターネット セッションを実装します。 このクラスを使用すると、1 つのインターネット セッションまたは複数の同時セッションを作成できます。
サーバーと通信するには、CInternetConnection オブジェクトだけでなく、CInternetSession
も必要です。 CInternetConnection
を作成するには、CInternetSession::GetFtpConnection、CInternetSession::GetHttpConnection、または CInternetSession::GetGopherConnection を使用します。 これらの呼び出しは、プロトコルの種類によって異なります。 これらの呼び出しによって、サーバー上のファイルが読み取り用または書き込み用に開かれることはありません。 データの読み取りまたは書き込みを行う場合は、別途ファイルを開く必要があります。
インターネット セッションのほとんどで、CInternetSession
オブジェクトは CInternetFile オブジェクトと連携して動作します。
インターネット セッションでは、CInternetSession のインスタンスを作成する必要があります。
インターネット セッションでデータの読み取りまたは書き込みを行う場合は、
CInternetFile
のインスタンス (またはそのサブクラスの CHttpFile または CGopherFile) を作成する必要があります。 データを読み取る最も簡単な方法は、CInternetSession::OpenURL を呼び出すことです。 この関数は、ユーザーが指定したユニバーサル リソース ロケーター (URL) を解析して、その URL で指定されたサーバーへの接続を開き、読み取り専用のCInternetFile
オブジェクトを返します。CInternetSession::OpenURL
は、1 つのプロトコルの種類に固有ではありません。FTP、HTTP、または Gopher URL に対して同じ呼び出しが機能します。CInternetSession::OpenURL
は、ローカル ファイルでも動作します (CInternetFile
の代わりにCStdioFile
を返します)。インターネット セッションでデータの読み取りまたは書き込みを行わず、FTP ディレクトリ内のファイルを削除するなどの他のタスクを実行する場合は、
CInternetFile
のインスタンスを作成する必要はありません。
CInternetFile
オブジェクトを作成するには、次の 2 つの方法があります。
CInternetSession::OpenURL
を使用してサーバー接続を確立する場合は、OpenURL
を呼び出すとCStdioFile
が返されます。CInternetSession::GetFtpConnection
、GetGopherConnection
、またはGetHttpConnection
を使用してサーバー接続を確立する場合は、それぞれ、CFtpConnection::OpenFile
、CGopherConnection::OpenFile
、またはCHttpConnection::OpenRequest
を呼び出して、それぞれ、CInternetFile
、CGopherFile
、またはCHttpFile
を返す必要があります。
インターネット クライアント アプリケーションを実装する手順は、OpenURL
に基づいて汎用インターネット クライアントを作成するのか、GetConnection
関数のいずれかを使用してプロトコル固有のクライアントを作成するのかによって異なります。
さらに詳しい情報
関連項目
Win32 インターネット拡張機能 (WinInet)
インターネット クライアント アプリケーションの作成用の MFC クラス
インターネット クライアント クラスの必要条件