WinInet.dll の機能を使用して、Web上のファイルをダウンロードするプログラムに挑戦中です。
*.HTML/*.JPG/*.ZIP 等のファイルは、問題なくダウンロードできるのですが、*.PHP ファイルはうまくダウンロードできません。
InternetConnect または、InternetOpenUrlで、「ERROR_FILE_NOT_FOUND 2(0x2) The system cannot find the file specified.」のエラーになってしまいます。
*.PHP ファイルは、*.HTML/*.JPG/*.ZIP 等のファイルと同じ様には扱えないのでしょうか。
何か、設定のポイントがあるのであれば、ご教授ください。
よろしくお願いいたします。
間違いがありましたので、訂正いたします。
エラーになる箇所は、HttpSendRequest または、InternetOpenUrl です。
>*.PHP ファイルは、*.HTML/*.JPG/*.ZIP 等のファイルと同じ様には扱えないのでしょうか。
そのphpファイルのパーミッションが「実行のみ許可」になってるんじゃないの?
「それは」さん、ご回答ありがとうございます。
現在の環境は、XP SP2 + VB2008 Express Edition です。
今回、VB.NET 初挑戦でして、いろいろ調べながらプログラムしています。
VB6 にて Inet/OpenURL を使用した場合には、問題なくダウンロードできました。
Inet でできたものが WinInet.dll でできないのは、プログラムに問題があるのだと思います。
そのポイントを教えてください。
VB2008 Express Edition で、うまく動作するようになったら、XP SP2 + Excel 2002 VBA でも、動作させたいです。
よろしく、お願いいたします。
PHPのパーミッションに関しては、調べて見ます。ありがとうございました。
結局は、私の手抜きコーディングが原因でした。
HttpSendRequestの正常/異常の判断をリターン値を使わず、いきなりGetLastErrorのリターン値で判断したのがまずかったようです。
HttpSendRequestのリターン値がエラーを示している時のみGetLastErrorを呼ぶように変更したら、うまくいきました。
ツイート | ![]() |