2008年07月30日

視覚スタイルの無効

 今日は「ファイル名変更君」について不具合が見つかったので、その対応をしていました。

 今回見つかった不具合はそれほど大したものではないのですが、概要を書くと、まず、Windows XP以降でWindowsの設定で視覚スタイルをオンにした状態にしていて、このソフトの実行ファイルのプロパティから視覚スタイルを無効にすると、リネーム方式の下部にある追加設定などを切り替えるタブが真っ黒になる、というものでした。

 原因を書くと、このタブはOwnerDrawという方法を使って描画しているのですが、描画をする時、起動されたOSがXP以降かどうかと、XP以降ならWindowsの視覚スタイルがオンになっているかどうかを調べて、それに合わせた描画を行なっています。
 その時、Windows全体の視覚スタイルのオン/オフだけ調べて、アプリ単体の視覚スタイルのオン/オフは調べていなかったので今回のような症状が出ていました。

 そこで、きちんとアプリ単体の視覚スタイルのオン/オフも調べて描画するように修正しました。

 少しここでその場所のコードについて書くと、Windows全体の視覚スタイルのオン/オフを調べるのに「IsThemeActive」を使い、アプリ単体の視覚スタイルのオン/オフを調べるのに「IsAppThemed」を使いました。

 ちなみに、これらの関数は「UxTheme.dll」を読み込み、そこから関数のアドレスを取得してから使います。
 このdllはXP以降にしかないので、読み込みが失敗すると2000以前のOSということがわかります。
ランキングへ  posted by 遠雷 at 00:40 | コメント(0) | MFC

2008年07月22日

原因判明?

 今日は「ことわざの部屋」の「」の項目を更新しました。
 今回は20個追加の1ページ増です。

 次に、今、不具合について調べている「ファイル名変更君」ですが、ある程度不具合が出る場所を特定できそうなところまで進みました。
 今のところ「user32.dll」関係のところが悪いのではないかと思っています。
 この「user32.dll」は「ファイル名変更君」ではメインダイアログの半透明化処理に使っています。
 このまま問題解決すればいいのですが・・・。

 次に、「MP3再生君」については、要望があった機能の実装が終わり、あとは細かい修正をすれば終わる、というところまで来ました。
 もう少しで、以前やっていた機能の追加と、今回の要望分でバージョンアップできると思います。

 これは余談ですが、休日になるとサイト訪問者数が激減します。
 特に、今回のような連休になると、休日の前日から少なくなります。
 ちょっとさびしい気分になります。(・_・、)
ランキングへ  posted by 遠雷 at 00:31 | コメント(0) | MFC