質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.77%

IE11でのファイルダウンロードで拡張子の"."が"_"になってしまう

受付中

回答 6

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 12K+

motowo

score 13

前提・実現したいこと

IE11で表示したHTMLのページからSetup.msiをダウンロードさせたいです。

発生している問題・エラーメッセージ

ダウンロードさせるアンカーを配置して、ダウンロード開始されましたが、
Setup.msiがSetup_msiでダウンロードされてしまいます。
Setup.msiにリネームすれば動作しますが、
一手間増えてしまうので、できればSetup.msiでダウロードさせたいです。

該当のソースコード

<a href="./Setup.msi">Setupダウンロード</a>

単純にファイル名を指定しているだけのアンカーになります。

試したこと

ブラウザの設定について、幾つかのサイトで指摘されている内容を確認しましたが、
どれも解決に至りませんでした。

  • インターネットオプション→セキュリティタブ→保護モードを有効にするのチェックをはずす
  • インターネットオプション→詳細設定タブ→セキュリティ→暗号化されたページをディスクに保存しないのチェックをはずす

補足情報(言語/FW/ツール等のバージョンなど)

Chromeでは発生していません。
OSはWindows7で発生しています。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • asahina1979

    2017/08/08 08:45

    rewrite設定されてませんか?

    キャンセル

  • motowo

    2017/08/08 09:24

    WebサーバーはIISを使用していますが、rewriteは設定していませんでした。

    キャンセル

  • asahina1979

    2017/08/22 08:49

    IIS でもrewrite設定は可能ですよ。 外部ファイルでの書き換え設定は不可能ですが

    キャンセル

回答 6

+3

私も同じ問題に遭遇しました…

対処は、

  • Windows を再起動
  • PcaSvc (Program Compatibility Assistant Service) サービスをホストしている svchost.exe を強制終了する。

この問題は 拡張子exeのファイルをダウンロードすると、拡張子の前のピリオドがアンダーバーとなってしまう  の 回答 にあるような Windows 7 の不具合のひとつ (現在は修正済み) のようです。

何がこの問題を引き起すのか興味があり色々調査していました。

  • 結論的には Windows 7 SP1 または Windows Server 2008 R2 の SP1 の Internet Explorer を使用してファイルをダウンロードしようとすると、エラー メッセージ で説明がある ハンドルのリーク によるもの。
  • 何のハンドルかというと、C:\Users\USERNAME\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\9I1B2791 のような一時フォルダーのファイルハンドルです。
  • Process Monitor を使用してファイルアクセスを追跡した所、9I1B2791 フォルダーへのアクセスが DELETE PENDING エラーで失敗する事を確認しました。この現象が . を _ にしてしまう要因です。
  • 余談ですが Windows でファイルハンドルを取得する際の共有フラグには FILE_SHARE_READ FILE_SHARE_WRITE FILE_SHARE_DELETE の 3 つがあり、今回は FILE_SHARE_DELETE の問題です。
  • 消えないファイルの話 の説明が非常に詳しいです。
  • ハンドルリークが iexplore.exe で発生するのではなく、svchost.exe で発生しています。
  • リークの事象 (またはハンドルを開いているという事象) は Handle コマンドで発生を確認できます。
  • svchost.exe は沢山起動しています。tasklist /svc コマンドで、svchost.exe と関連しているサービスの確認ができます。
  • 2885210 の修正対象のファイルリストに Pcaui.dll があり、PcaSvc との関連性を疑いました。
  • 当該の svchost.exe を強制終了するとハンドルのリークが解消するので、ダウンロードのファイル名で . が _ となる問題は解消します。
  • 回避に関する考察は以上ですが、根治するには Windows Update をやり尽くす (または PcaSvc を無効化する) しかなさそうです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+2

IE11 側のディスクキャッシュ領域が不足しているとこういう症状が起きる事例があるようです。
ディスクの空き容量を一度確認して、あとキャッシュ削除、ダウンロードフォルダから不要なファイルを削除するなどしてみてください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/08 09:24

    回答ありがとうございます。
    空き容量は十分で、キャッシュをクリアしてみましたが、事象は変わりませんでした。

    キャンセル

+2

以下のとおり、IE設定により拡張子が変わる事例が報告されています。
エクセルをダウンロードすると勝手にCompressed (zipped)Folderに変換される

インターネットオプション->セキュリティ設定の以下の設定が影響している可能性があるようです。

  • 拡張子ではなく、内容によってファイルを開く
  • MIME スニッフィングを有効にする

参考まで。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

適当な Setup.msi を作り、file:// と https://127.0.0.1/ で検証しましたが、Windows 10 Home + IE11 では正常にダウンロードできました。

Re: motowo さん

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/08 08:34

    回答ありがとうございます。
    記載漏れていましたが、Win7で事象が発生しています。
    Win10では発生しなかったということは、OS依存の可能性もあるかもですね。

    キャンセル

  • 2017/08/08 10:30

    あるいは、インターネットオプションの設定起因か、ファイアウォールソフト等の別のソフトが干渉しているか。

    ところで、私の回答にマイナス評価が付いていますが、差し支えなければ、マイナス評価を投じた理由を教えて下さい。To: マイナス評価を投じた方

    キャンセル

+1

Windows7+IE11で再現しませんので、そちらの環境固有の問題でしょう。
IEのアドオンとか。

MS側の問題なら、全世界で話題になっているはず。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

-5

あえてほっとくのはどうでしょうか?
IE11なんて糞ブラウザは存在自体が害悪ですので、IE11ユーザには不便なまま放置して、IEユーザを減らしていくのが、みんなが幸せになる考え方だと思います。

ちなみに、

<a href="./Setup.msi" download="Setup.msi">Setupダウンロード</a>


みたいな記述でどうでしょう。download属性をつけることでダウンロード処理を促すとともに、ダウンロード時のファイル名を指定できます。
…と書こうとしてのですが、chrome,firefox,safariで動いたのに、IE11では見事に動作しなくてドン引きしました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/08/07 19:12

    確かにIE11は糞ブラウザかも知れませんが、ウチの会社では唯一使用可のブラウザですし、おすし。

    キャンセル

  • 2017/08/08 08:36

    回答ありがとうございます。
    確かに放置したいところではありますが、指定ブラウザなので、何かしら解決方法がないか調査が必要なのです・・・

    downloadをつけてみましたが、こちらでも事象は解決しませんでした。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.77%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る