1

非常に遅いように見えるモバイル接続を介して setup.exe ファイルをダウンロードしようとしているお客様がいます。

ダウンロードした setup.exe をクリックすると、インストール ウィザードが起動しますが、ウィザードの途中で、cab ファイルが破損しているか見つからないことを示すエラー メッセージが表示されると報告されています。

彼らは問題のあるタブレットを私たちに宅配し、問題なくファイルをダウンロードしましたが、https を使用してファイルをダウンロードすることで問題を再現できました (https は通常、サイトの残りの部分にアクセスするために使用されますが、ダウンロードには必要ありません)。 )。これを行ったとき、ダウンロードされたファイルは2.8MBでした。8MBのはずです。

https を使用するとブラウザの履歴にダウンロード リンクが表示されるため、https が問題の根本的な原因であるとは考えていません。そのため、顧客が http を使用してダウンロードしようとしたことはわかっています。問題は、接続が悪いために完全なダウンロードが妨げられていることだと思いますが、ブラウザは完全にダウンロードされたかのように動作しています。

ファイルが完全にダウンロードされるか、またはまったくダウンロードされないことを確認する方法はありますか? ブラウザーがダウンロードが不完全であることを示さないのはなぜですか?

4

1 に答える 1

2

ほとんどの場合、EXE ファイルが存在する Web サーバーはContent-Length ヘッダーを送信しません。このヘッダーがない場合、ダウンロードが完了したかどうかをブラウザーが判断できる唯一の方法は、「バイトが来なくなったとき」、つまり TCP/IP 接続が閉じられているか、タイムアウトになっていることです。接続品質が低い場合、これは時期尚早に発生する可能性があります。

もう 1 つのオプションは、ヘッダーが送信されるが、ブラウザーがそれを無視することです。このようなレベルの脳損傷は最近では非常にまれですが、ブラウザが非標準/組み込み/古いものである場合は可能性があります.

したがって、この問題の解決策はおそらく HTTP サーバーを修正することです。また、セットアップ パッケージのビルドに使用するソフトウェアのオプションを確認してください。おそらく、最終的な EXE のハッシュを作成する (または少なくとも目的の長さを記憶する) 設定があり、より適切なエラーを表示するように設定されている可能性があります。アーカイブが破損している場合のメッセージ。

于 2010-03-19T12:17:28.283 に答える