プロフィール

Na-7

Author:Na-7
SE(システムエンジニア)として約15年間システム系ソフト会社を勤めあげ、2008年3月退社。現在、ゲーム制作会社設立を目指して活動中。


アクセスカウンター


最新記事


最新コメント


最新トラックバック


月別アーカイブ


カテゴリ


DATE: CATEGORY:スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
DATE: CATEGORY:3Dテストプログラム開発
ClickOnceセットアップ実行画面
セットアップ実行画面
ClickOnceで作成したsetup.exeの実行画面。ゲーム実行に必要なランタイムをチェックしてインストールを促す。



◎XNA実行環境の問題

前回記事のコメントで、とくめーさんからXNA3.0が「ClickOnce」に対応していることを教えて頂きました。

昨年「XNA実行環境の問題について」に記述した通り、XNA実行環境には3つの問題があると考えていましたが、そのうちの1つ(ランタイムの問題)が改善されたようです。


とある事情により、サブPC(XNA3.0未導入)上でXNA3.0ゲームの動作テストを実施する必要が生じたので、これを機にClickOnceを試してみます。



◎試してみる

こちらの記事を参照しながら「プロジェクトの発行」を行い、生成されたsetup.exeをサブPCで実行すると、ランタイムのインストール画面が表示されました。

インストールに同意するとランタイムのインストールが開始されましたが、ここでわざとキャンセルすると、セットアップの中断処理が実施され、セットアップがキャンセルされました。ここまでは想定通りです。

ところが、setup.exeを再度実行すると…セットアップがまともに動きません(異常終了)。

サブPCの状態を確認すると、スタートメニューにはゲームが登録済、‘プログラムの追加と削除’にはXNA Framework3.0とゲームが登録済の状態でした。

どうやら、先程のセットアップ中断処理が中途半端で、レジストリ関係がクリアされずに残ってしまったようです。しっかりしてくれ~!>MS社



◎動きません

‘プログラムの追加と削除’からXNA Framework3.0とゲームを自分で削除し、セットアップを実行すると、セットアップは正常に動作し、インストールが完了しました。

これで直ったかな、と思いつつゲームを実行すると…何故か動きません。興味本位でキャンセルテストなんかやらなきゃ良かった…。

試しに、ゲームプログラム開発元の\bin\x86\ReleaseフォルダをサブPCにコピーしてexeファイルを実行すると、正常に動作しました。ランタイムは問題無くインストールされたようですね。

スタートメニューに登録されたゲームの呼び出し元(先?)を確認すると、最初の発行時に作成した「~.application」が呼び出されてました。つまり「ClickOnceは、Releaseフォルダの~.exeファイルとは別のものを配布する」ということです。



◎まとめ

当初の目的である「サブPCでのゲーム動作テスト準備(実行環境構築)」は達成されたため、中途半端ですみませんが、ClickOnceの検証はここまでとします。
…これ以上踏み込むとハマりそうで怖い(笑)

結局、ClickOnceで配布したゲームは未だに動きませんが、これは「セットアップの中断処理がたまたま誤動作したため」と思い込むことにしますw
まぁ、セットアップ中にキャンセルするケースなど稀でしょうから、その点はあまり心配していません。

しかし1つ覚えておきたいのは「何かトラブって一度ゲームが起動しなくなると、削除&再インストールでも動かないケースがある」ということです。

もしユーザからこのような報告を受けた場合は、下手にレジストリや配置マニフェスト(詳細はこちら)の修正を図るよりも、exeファイルを個別に配信した方が賢明と思います。



◎次回予告

ClickOnceが全く問題無いようなら、3Dテストプログラムの配布モジュールもこれで作り直そうと思っていたのですが、今回は見送りですね~。

ClickOnceはいずれまた扱うつもりですので、その時は踏み込んで検証します。

次回は「遅延対策案の再検討」です。

スポンサーサイト

テーマ : ゲーム製作 関連 - ジャンル : ゲーム

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック


この記事にトラックバックする(FC2ブログユーザー)



copyright © ゲーム制作の舞台裏 all rights reserved.Powered by FC2ブログ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。