• 解説

    インターネット上からファイルをダウンロードしたくなることがある場合、ハイパーリンクやDOSプロンプトを使用すると思います。
    しかし、作業の進捗状況を視覚的に表示したい場合はこれらの方法では不可能です。

  • 手順

    1. 下記のAPIを定義します。

      HttpOpenRequest
      HttpQueryInfo
      HttpSendRequest
      (FTPのときはFtpOpenFile)
      InternetCloseHandle
      InternetConnect
      InternetOpen
      InternetReadFile
      (FTPの送信のときはInternetReadFileを使用します)
      
    2. InternetOpenでインターネットセッションハンドルを取得します。
    3. [No.2]で取得したインターネットセッションハンドルをInternetConnectに渡しインターネットコネクションハンドルを取得します。
    4. [No.3]で取得したインターネットコネクションハンドルをHttpOpenRequestに渡しHTTPの接続ハンドルを取得します。
      FTPの場合はFtpOpenFileを使用します。
    5. [No.4]で取得したHTTPの接続ハンドルをHttpSendRequestに渡しリクエストを送信します。
      Ftpでは必要ありません。
    6. [No.4]で取得したHTTPの接続ハンドルをHttpQueryInfoに渡しステータスを取得します。
      ステータスに問題ない場合は継続し、問題がある場合はエラー処理を行います。
      Ftpでは必要ありません。
    7. [No.4]で取得したHTTPやFTPの接続ハンドルをInternetReadFile(FTPの送信のときはInternetReadFileを使用します)に渡しデータを転送します。
    8. 最後にInternetCloseHandleに[No.4]、[No.3]、[No.2]の順番に渡しハンドルを閉じます。
  • その他

    AccessのVBAおよびAPIの知識が必要です。

説明がわからないなどありましたらお問い合わせでお知らせください。

ここに掲載された情報を使用したことによって発生した、いかなる損害に対しても
管理者である雅は一切責任を負いません。