Simplestar Game

How do I create a 3D game ?
http://simplestar.syuriken.jp/
since 17/01/2009
  • BACK
  • HOME
  • NEXT
  • |

:::::::::::049話 構成とリソース:::::::::::

ユーザーごとに、何回アプリを起動させたか、何回エラーの報告を怠ったかなどを知る方法があります。
ほか、画像ファイルをローカルに配置するか、exeファイルに埋め込むかの設定方法を解説します。

扉絵。
ちょっと違うアングルで絵を描いてみました。

構成

エラーの解析にも関係する話だと思います。
たとえば、そのユーザーはアプリケーションをこれまで起動させたことがあるか?とか
そんな情報は実行時に手に入りませんよね。 こうした情報は WPF では、「構成の状態」と呼ばれています。

具体的な方法ですが、アプリケーションの実行にまたがる情報は System.Configration を使うと良いとされています。
ちょっと準備が必要なんですよね、お付き合いいただきたいと思います。

まずは新しくクラスファイルを追加して次のアプリケーション設定クラスを定義します。

ハイライトした 12 行目、ApplicationSettingsBase クラスから派生させるのがポイントです。

この設定クラスをアプリケーションで使えるようにします。

スタートアップで起動回数を表示し、インクリメント。
終了処理でインクリメントした結果を保存してます。

アプリケーションを起動するたびに、今回が何回目の起動なのか表示します。

うーん、教科書には「構成ファイルバインディング」を行う必要があると書かれていたのだけど
何もせずとも、起動回数は記録できていることを確認しました。
今回の使い方をする分では行う必要はなさそう。(機能しないなど、問題になったら学習しましょう。)

APP_SETTING_RUN_COUNT は例の一つなので、このほか何でもよいです。
アプリケーションごとに永続的に保存したい設定がある場合は、今回示す方法で対応してみてはいかがでしょうか?

ただ、今回紹介した ApplicationSettingsBase を使うやり方は面倒くさいねー、という記事を見つけました。

Gushwell's C# Dev Notes

アプリ固有の設定の保存方法、対応時は少し調べないといけないみたいですね。

リソース

プロジェクトに画像ファイルを追加するとき、3つの追加方法があります。

Content
Resource
EmbeddedResource

これらは「ビルドアクション」と呼ばれます。

Content はリソースをアプリケーションのディレクトリに配置し、アプリケーションには埋め込まれません。

Resouce はアプリケーションの共通リソースという場所に埋め込まれます。(xamlから使用できます。)

EmbeddedResource はアプリケーションに個別に埋め込みます。(xamlから使用できません。)

どうやって、切り分けるの?

プロジェクトにファイルを追加して、プロパティを開きます。
ビルドアクションの項目を切り替えるだけです。

Content は「コンテンツ」
EmbeddedResouce は「埋め込まれたリソース」
になりますね。

2012/04/23 初記。

:::::::::::049話 構成とリソース:::::::::::

  • BACK
  • HOME
  • NEXT
ホームページ制作 フリー素材 無料WEB素材
Copyright (C) Simplestar All Rights Reserved.