- PR -

VS.NETで画像をリソースに取り込む

1
投稿者投稿内容
autumn
大ベテラン
会議室デビュー日: 2001/07/27
投稿数: 215
投稿日時: 2002-02-09 13:09
 C#では、.resourceや.resxといった拡張子のリソースファイルがあります。
 しかし、実行ファイルのリソースに画像データを取り込む場合は実はこれとは違う手順を使うようです。コマンドラインでやる場合の実例は、サンプルソースとして.NET Framework SDKに含まれています。
 では、VS.NETのIDEで操作する場合はどうするのか。
 以下の手順でできるようです。
・ ビットマップをプロジェクトに追加して描いて保存する
・ ビットマップファイルのプロパティで、Build ActionをEmbedded Resourceにする
・ ビルドするとその時点で既に実行ファイルにビットマップは取り込まれている
・ プログラム内から利用するには以下のメソッドを使う
 System.Reflection.Assembly.GetManifestResourceStream
 System.Reflection.Assembly.GetManifestResourceInfo
 System.Reflection.Assembly.GetManifestResourceNames
・ 取得するときのビットマップの名前はファイル名ベースの名前が付けられている
  (具体的な名前はSystem.Reflection.Assembly.GetManifestResourceNamesを呼んでみれば確認できます)
 当然、内容はストリームとして読み出せるので、画像以外の他のものでもリソースに取り込めそうです。

_________________
1

スキルアップ/キャリアアップ(JOB@IT)