none
ClickOnceを使ってインストールした時IEのバージョンで動作が異なる。 RRS feed

  • 質問

  • ClickOnceを使ってWindowsアプリケーションをインストールした時IEのバージョンにより動作が異なります。

     

     IE6・・XMLが表示される

     IE7・・インストールが実行される(インストール確認ダイアログが表示される)

     

    IE7は、ContextTypeが”Text/Plain"でもインストールは実行されます。

    IE6は、ContextTypeが”application/x-ms-application”でないとXMLが表示されるということでしょうか?

    (参考資料 http://www.atmarkit.co.jp/fdotnet/clickonce/clickonce06/clickonce06_01.html

     

    それとも、ContextTypeが”application/x-ms-application”になっていないのは、

    Webサーバーの不良(設定ミス)でしょうか?

     

    よろしくお願いします。

     

     

    環境は以下の通りです。

     

    WinOS・・・・WinXPSP2

    Winアプリ・・Visualstudio2005 VisualBasic

     

    WebOS:Linux4

    Webサーバー:Apache2.0.52

     

    MIMEタイプ:.htaccessに下記を定義

     AddType application/x-ms-application .application
     AddType application/x-ms-manifest .manifest
     AddType application/octet-stream .deplo

     

    FiddlerでインストールするContextTypeをトレースすると

     .applicationは”Text/Plain"

     .deploは”application/octet-stream”

    になっていました。

     

     

    2008年7月1日 9:52

回答

  • 自己レスです。

     

    お騒がせしましたが、解決しました。

     

    商業用サーバにてテストを行なった所、IE6でもClickOnceが正常に動作しました。

    そうすると、Webサーバーの設定ミスということになり、調査した所以下が判明しました。

     

    アクセスコントロールファイルのオーバライドが無効になっていました。

     

     

    大変申しわけありませんでした。

     

     

    2008年7月2日 3:14

すべての返信

  •  SerizawaPDS さんからの引用

    ClickOnceを使ってWindowsアプリケーションをインストールした時IEのバージョンにより動作が異なります。

    これはIEの仕様では。

    問題の本質はそこじゃないはずです。 

     

     SerizawaPDS さんからの引用

    それとも、ContextTypeが”application/x-ms-application”になっていないのは、

    Webサーバーの不良(設定ミス)でしょうか?

    .applicationなファイルを要求して、application/x-ms-applicationを期待しているのに対してtext/plainの応答が帰っているのであれば、設定ミスでしょう。

    その設定ミスがどこにあるかまでは特定しかねます。

     

     SerizawaPDS さんからの引用

    MIMEタイプ:.htaccessに下記を定義

     AddType application/x-ms-application .application
     AddType application/x-ms-manifest .manifest
     AddType application/octet-stream .deplo

    考えられる可能性。

     

    ・.htaccessによる上書きを認めていない。

    ・.htaccessの置き場所が不適切。(対象としたいファイル".application"に効く位置にない?)

    2008年7月1日 14:13
    モデレータ
  • Azuleanさんありがとうございます。

     

     .htaccessは、”.deplo”に対しては、ContTextTypeは”application/octet-stream”が返ってきているので、格納フォルダー、上書き等は考えられないと思っています。

     

     ClickOnceの解説がされているいろんなサイトを参考にしたのですが、サーバー側はMIMEタイプの設定が必要だと判るのですが

     他にも設定があるのかと思い質問をしました。(サーバーの設定に関しましては全く判りませんので)

     

     現状をみると、ClickOnceはIE7でしか動作しないということでしょうね。

     

     

     

     

     

     

     

     

     

    2008年7月2日 1:05
  • 自己レスです。

     

    お騒がせしましたが、解決しました。

     

    商業用サーバにてテストを行なった所、IE6でもClickOnceが正常に動作しました。

    そうすると、Webサーバーの設定ミスということになり、調査した所以下が判明しました。

     

    アクセスコントロールファイルのオーバライドが無効になっていました。

     

     

    大変申しわけありませんでした。

     

     

    2008年7月2日 3:14
  • 既に解決されているようですが、一応書いておきます。

     

     SerizawaPDS さんからの引用

     .htaccessは、”.deplo”に対しては、ContTextTypeは”application/octet-stream”が返ってきているので、格納フォルダー、上書き等は考えられないと思っています。

    "application/octet-stream"は不明なバイナリデータの意味合いがあり、登録されていない拡張子はこのMIMEタイプで返されることが多いです。

     

    よって、.htaccessが効いていない(設定の上書きを認められていない)可能性も考えていました。

    2008年7月2日 14:03
    モデレータ
  •  

    ありがとうございました。

     

    ”上書き”ということで、ディレクトリの属性、ファイルの属性だと思っていましたのでどうもすみませんでした。

     

    Webサーバーにおけるサーバー設定パラメータ(httpd.conf)でアクセスコントロールファイルのアクセス制御が

    ”無効”だったもので本現象が発生しました。

     

    申しわけありませんでした。

     

    2008年7月3日 1:00