読者です 読者をやめる 読者になる 読者になる

blechmusikの日記

キー・カスタマイズ・ソフトウェア "DvorakJ" の覚え書きをはじめとして様々なことを書いています。

更新情報は取得できるものの、最新版を自動的にダウンロードできないことがある

DvorakJ

kasuga_toruさんからのコメント*1を受けて気づいたのは、DvorakJ がつぎの表のとおり更新処理を行っているということだ。

  ./user/proxy_server.txtの設定 インターネット・セッティングの設定
更新情報の取得処理に…… 反映される 反映される
最新版の自動ダウンロード処理に…… 反映されない 反映される

このように処理してしまう理由を簡単に解説しよう。最新版の自動ダウンロード処理では URLDownloadToFile - AutoHotkeyJp というコマンドを利用しているのだが、このコマンドはインターネット・セッティングの設定しか読み込まないのである。端的に言うと、任意のプロキシを設定したうえでファイルをダウンロードすることは出来ない。このコマンドを利用し続ける限りは上記の表のように動作してしまう。
対処策は分かるのだが、思い通りに動かすことができないため、対処できていない。WinHttpRequest object (Windows)IWinHttpRequest::ResponseBody property (Windows) を利用すれば、任意のプロキシを設定してから*2 DvorakJ 最新版をバイナリファイルとしてダウンロードできるだろう。このResponseBodyによる取得処理とファイルへの保存処理がうまくできない。WinHttpRequest の別のプロパティであるIWinHttpRequest::ResponseText property (Windows)であれば思い通りに処理することができているのだが……
具体的な修正方法が分かり次第、対処しよう。