locked
Silverlightアプリを公開するには? RRS feed

  • 質問

  • たびたびお世話になります。

    mkmarimoです。

    以下の開発環境でSilverlight 2を評価中です。

    【IDE】
     Visual Studio 2008 Professional Edition SP1 + Silverlight Tools
     Expression Blend 2

    【OS】
     Windows Vista Business SP1

    Visual Studioから新規に「Silverlight アプリケーション」のプロジェクトを
    作成し、Silverlightをホストするための新しいASP.NET Webプロジェクトとして
    「ASP.NET Webアプリケーションプロジェクト」をソリューションに追加しています。

    開発中は動作確認にVisual StudioからF5キーで「ASP.NET 開発サーバー」を
    利用してました。

    開発が終わり、このアプリケーションをイントラネットに公開するにはどうすれば
    よいでしょうか。

    ASP.NETプロジェクトのDefault.aspxに以下のコードを書き込み、Vista上に
    立てたローカルIISのDefault Web Siteの下に仮想ディレクトリを作成し、
    Visual Studioより発行したんですが、IEでhttp://localhost/XXXX/にアクセスすると
    ランタイムエラーが出てしまします。

        <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
            <div  style="height:100%;">
                <asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/XXXX.xap" MinimumVersion="2.0.31005.0" Width="100%" Height="100%" />
            </div>
    【ランタイムエラーの内容】
     エラー:Sys.InvalidOperationException:InitializeError error
     #2103 in control 'Xaml1':アプリケーションが無効であるか、形式が
     正しくありません:マニフェストを確認してください。


    IIS自体触ったことがなく、初歩的な質問かもしれませんが、
    よろしくお願いします。

    2009年4月20日 9:16

回答

  • > > .xap ファイルのMIMEタイプが正しく設定されているか確認
    >
    > こちらについてはどこかWebサイトでVista SP1だと必要ないという記載を読みましたので、
    > 試してません。
    > というか設定する箇所が見つけられません・・・。

    Vista の IIS マネージャーの場合、対象となるアプリケーション/仮想ディレクトリを開けば、
    その中に「MIMEの種類」という項目があるので、そこで確認できます。

    自動でMIME設定されてるはずの環境でも、
    インストール順序によっては時々設定がされなかったりするので念のために。
    IIS が有効な状態で Visual Studio とか Silverlight Tools を再セットアップすると直ったりします。


    あとは、発行先のフォルダのアクセス権限(フォルダのプロパティの[セキュリティ]タブで見れるやつ)はどうなっていますか?
    inetpub\wwwroot 以下のフォルダに置いたんなら、IIS_IUSERS の「読み取りと実行」は許可されているはずですが、
    一応確認をお願いできますか。


    > そもそも私の環境ではhttp://localhost/のURLにアクセスすると、
    > IEの左下には「ページが表示されました」と出ますが、IISのスタートページは
    > 表示されず、真っ白です。
    > 根本的に設定が間違っていますでしょうか?

    まっ白なページというのは何か妙な気がしますが
    (inetpub\wwwroot\iisstart.html を編集したりしていなければ welcome 画像が表示されるので)、
    ちょっと今ある情報からだけだと原因が分からないですね・・・

    ひょっとして、inetpub\wwwroot 直下に Silverlight プロジェクトを発行したりしました?
    一段下にフォルダを掘って、そこをIISマネージャーからアプリケーションに設定して、
    そのフォルダの下に発行するとどうなりますか?
    • 回答としてマーク mkmarimo 2009年4月22日 1:00
    2009年4月21日 14:21
  • iwanaga様

    お世話になります。mkmarimoです。

    > Vista の IIS マネージャーの場合、対象となるアプリケーション/仮想ディレクトリを開けば、
    > その中に「MIMEの種類」という項目があるので、そこで確認できます。

    上記について、私の環境で「MIMEの種類」なる項目が見当たりませんでしたので、
    IISのインストールに誤りがあるのでは!?と思い、思い切ってIISの再インストールを行いました。

    そうしたところ、正常に動作するようになりました。

    動作し出したらし出したで、また新たな問題が出てますが、
    この質問に関しては締め切らさせていただきたいと思います。

    親身にご教授くださり、まことにありがとうございました。
    • 回答としてマーク mkmarimo 2009年4月22日 1:00
    2009年4月22日 1:00

すべての返信

  • 考えられるのは以下のような場合だと思うんですが、確認してみてもらえますか。

    1. IISで、「仮想ディレクトリの追加」ではなく「アプリケーションの追加」でディレクトリを作る
    2. .xap ファイルのMIMEタイプが正しく設定されているか確認
    3. .xap ファイルの発行先のローカルフォルダが Windows 共有されていないか確認

     

    2009年4月21日 0:37
  • iwanaga様

    ご回答ありがとうございます。mkmarimoです。

    > IISで、「仮想ディレクトリの追加」ではなく「アプリケーションの追加」でディレクトリを作る

    やってみましたがダメでした。
    「Webページがみつかりません(HTTP404)」となりました。

    > .xap ファイルのMIMEタイプが正しく設定されているか確認

    こちらについてはどこかWebサイトでVista SP1だと必要ないという記載を読みましたので、
    試してません。
    というか設定する箇所が見つけられません・・・。

    > .xap ファイルの発行先のローカルフォルダが Windows 共有されていないか確認

    こちらについてはされていませんでした。
    発行先はIISのデフォルトです。


    ちなみに、IIS自体初めてで、結構調べてるんですが、IIS 7.0となるとWeb上に
    あまり情報がなく困っています。

    そもそも私の環境ではhttp://localhost/のURLにアクセスすると、
    IEの左下には「ページが表示されました」と出ますが、IISのスタートページは
    表示されず、真っ白です。
    根本的に設定が間違っていますでしょうか?


    2009年4月21日 2:41
  • > > .xap ファイルのMIMEタイプが正しく設定されているか確認
    >
    > こちらについてはどこかWebサイトでVista SP1だと必要ないという記載を読みましたので、
    > 試してません。
    > というか設定する箇所が見つけられません・・・。

    Vista の IIS マネージャーの場合、対象となるアプリケーション/仮想ディレクトリを開けば、
    その中に「MIMEの種類」という項目があるので、そこで確認できます。

    自動でMIME設定されてるはずの環境でも、
    インストール順序によっては時々設定がされなかったりするので念のために。
    IIS が有効な状態で Visual Studio とか Silverlight Tools を再セットアップすると直ったりします。


    あとは、発行先のフォルダのアクセス権限(フォルダのプロパティの[セキュリティ]タブで見れるやつ)はどうなっていますか?
    inetpub\wwwroot 以下のフォルダに置いたんなら、IIS_IUSERS の「読み取りと実行」は許可されているはずですが、
    一応確認をお願いできますか。


    > そもそも私の環境ではhttp://localhost/のURLにアクセスすると、
    > IEの左下には「ページが表示されました」と出ますが、IISのスタートページは
    > 表示されず、真っ白です。
    > 根本的に設定が間違っていますでしょうか?

    まっ白なページというのは何か妙な気がしますが
    (inetpub\wwwroot\iisstart.html を編集したりしていなければ welcome 画像が表示されるので)、
    ちょっと今ある情報からだけだと原因が分からないですね・・・

    ひょっとして、inetpub\wwwroot 直下に Silverlight プロジェクトを発行したりしました?
    一段下にフォルダを掘って、そこをIISマネージャーからアプリケーションに設定して、
    そのフォルダの下に発行するとどうなりますか?
    • 回答としてマーク mkmarimo 2009年4月22日 1:00
    2009年4月21日 14:21
  • iwanaga様

    お世話になります。mkmarimoです。

    > Vista の IIS マネージャーの場合、対象となるアプリケーション/仮想ディレクトリを開けば、
    > その中に「MIMEの種類」という項目があるので、そこで確認できます。

    上記について、私の環境で「MIMEの種類」なる項目が見当たりませんでしたので、
    IISのインストールに誤りがあるのでは!?と思い、思い切ってIISの再インストールを行いました。

    そうしたところ、正常に動作するようになりました。

    動作し出したらし出したで、また新たな問題が出てますが、
    この質問に関しては締め切らさせていただきたいと思います。

    親身にご教授くださり、まことにありがとうございました。
    • 回答としてマーク mkmarimo 2009年4月22日 1:00
    2009年4月22日 1:00