トップ回答者
Silverlightアプリを公開するには?

質問
-
たびたびお世話になります。
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
すべての返信
-
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