インターネットからファイルをダウンロードします。
Download URL, Filename
型:文字列
ダウンロードするファイルのURL。例えば、"https://someorg.org"
、その組織のウェルカムページを取得することができるかもしれません。
型:文字列
ローカルに作成するファイル名を指定します。絶対パスが指定されていない場合は、A_WorkingDirにあると仮定されます。既存のファイルは、新しいファイルによって上書きされます。
ファイルへダウンロードする機能です。To download to a variable instead, see the example below.
失敗した場合は例外がスローされます。
リモートファイルが存在しないのに、ダウンロードが成功したように見えることがあります。これは、多くのウェブサーバーが、見つからないファイルの代わりにエラーページを送信するためです。このエラーページは、Filenameの代わりに保存されるものです。
ファイアウォールや複数のネットワークアダプターが存在する場合、この機能に失敗することがあります。また、ウェブサイトによっては、そのようなダウンロードをブロックしている場合があります。
キャッシング:デフォルトでは、URLはリモートサーバーから直接取得されます(つまり、Internet Explorerのキャッシュから取得することはありません)。キャッシュを許可する場合は、URLの前に*0とスペースを入れてください:"*0 https://someorg.org"
。アスタリスクに続くゼロは、有効なdwFlags番号で置き換えることができます。詳細は、www.microsoft.com「InternetOpenUrl」を検索してください。
プロキシ:Microsoft Internet Explorerの設定でプロキシサーバーが設定されている場合は、そのサーバーを使用します。
FTPやGopherのURLもサポートされています。事例:
Download "ftp://example.com/home/My File.zip", "C:\My Folder\My File.zip" ; 匿名でログインします。 Download "ftp://user:pass@example.com:21/home/My File.zip", "C:\My Folder\My File.zip" ; 特定のユーザーでログインしてください。 Download "ftp://user:pass@example.com/My Directory", "C:\Dir Listing.html" ; HTML形式のディレクトリ一覧を取得します。
Download "https://www.autohotkey.com/download/2.0/version.txt", "C:\AutoHotkey Latest Version.txt"
whr := ComObject("WinHttp.WinHttpRequest.5.1") whr.Open("GET", "https://www.autohotkey.com/download/2.0/version.txt", true) whr.Send() 上記の'true'と下記の呼び出しを使用することで、スクリプトの応答性を維持することができます。 whr.WaitForResponse() version := whr.ResponseText MsgBox version
Makes an asynchronous HTTP request.
req := ComObject("Msxml2.XMLHTTP") ; asyncを有効にしてリクエストをオープンします。 req.open("GET", "https://www.autohotkey.com/download/2.0/version.txt", true) ; コールバック関数を設定します。 req.onreadystatechange := Ready ; リクエストを送信します。 完了したらReady()が呼ばれる。 req.send() /* ; 待つのであれば、onreadystatechangeは必要ない。 ; async=trueを設定し、このように待機することで、スクリプトが残ります。 ; async=falseの場合、ダウンロードが行われている間、レスポンシブに動作します。 ; すると、スクリプトが応答しなくなります。 while req.readyState != 4 sleep 100 */ Persistent Ready() { if (req.readyState != 4) ; Not done yet. return if (req.status == 200) ; OK. MsgBox "Latest AutoHotkey version: " req.responseText else MsgBox "Status " req.status,, 16 ExitApp }