アプリ版:「スタンプのみでお礼する」機能のリリースについて

プログラム内でアイコンを2つ使っているのですが
1つはWNDCLASSEX構造体のhIconメンバに渡して
2つめはDrawIconExで描画用に使っています。
しかし、1つめのアイコンはタスクバー上のアイコンとしては表示されるのですが
(ウィンドウ自体はリージョンウィンドウで作成したのでタイトルバーはありません。また、タスクトレイと勘違いしてるわけでもないです。)
作成した.exeファイルには2つめのアイコンが表示されてしまいます。
リソースから2つめのアイコンを消すと1つめのアイコンが.exeのアイコンとして表示されるようですが、
2つめのアイコンを使わないわけにはいきません。

リソースファイルには
ICON1 ICON "Icon1.ico"
ICON2 ICON "Icon2.ico"
とだけ指定してあります。
アイコンのロードにはLoadImageで第2引数にはTEXT("ICON1")のように文字列で指定しています。

ウィンドウクラス構造体に指定したアイコンがそのまま、.exeファイルのアイコンとして表示されるのだと認識しているのですが
なぜ、描画用にしようしたアイコンが表示されてしまうのでしょう?
解決するための方法や参考になるサイトなどあればご教示ください。

A 回答 (1件)

エクスプローラなどが表示しているアイコン…でよろしいですか?



アイコンリソースで最初に見つかったものが表示されます。
作成されたEXEファイルをリソースハッカーなどで確認すると、
アイコンのリソースIDが分かるかと思われます。
IDに数値を設定していない場合は…登録した順なのかリソース名の辞書順なのかは…ちょっとわからないです。
# 名前(文字列)で設定したことありませんので…。
http://m--takahashi.com/bbs/pastlog/a4500/A4408. …

XP以降だとマニフェストファイルも関係する…んでしょうか。
http://www.atmarkit.co.jp/fdotnet/dotnettips/385 …
    • good
    • 0
この回答へのお礼

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

なるほど、リソースIDの若いアイコンが反映されるわけですね。
リソースIDに数値振り分けてやってみます。

大変参考になりましたありがとうございました。

お礼日時:2008/09/23 01:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!