4

.msstyles ファイル (Windows XP ビジュアル スタイル ファイル) からいくつかのビットマップを抽出する必要がありますが、どこから始めればよいかわかりません。それを行う方法に関するドキュメントが見つからないようで、ファイル形式はバイナリであり、簡単に解析できないようです。次を使用して、ビットマップを単独で抽出できました。

IntPtr p = LoadLibrary(UxTheme.ThemeName);
Bitmap bmp = Bitmap.FromResource(p, "BITMAP_NAME");
FreeLibrary(p);

ただし、余白のサイズ、間隔、ビットマップごとの「画像」の数など、ビットマップに関連する情報も必要です。これまたは私が使用できるドキュメントへのリンクの経験がある人はいますか?

4

3 に答える 3

4

このサイトは、Microsoft によってではなく、ファイル形式が文書化されていると主張しています。
これはWine Crossreferenceにもあります。
それが役立つことを願っています!

于 2008-11-15T00:20:03.840 に答える
1

dllから直接ファイルを取得したい場合(msstylesは別の拡張子を持つdllであることを忘れないでください)、Anolisプロジェクトを見ることができます。

実際にそのようなものを解析することに関しては、そのファイル内のさまざまなテキストリソースがどのように機能するかについての情報について、msstylesの作成に関するさまざまなチュートリアルを参照する必要があります。

このcodeprojectの記事は、少し相互運用関係があり、まさにあなたが望むものを持っているようです。管理されたラッパーが存在し、それはかなり良いようです。.Net WindowsFormsにも機能が組み込まれているため、読み取り専用アクセスを簡略化する場合は、System.Windows.Forms.VisualStyles名前空間を確認することをお勧めします。

于 2008-11-17T11:29:04.440 に答える