2008-11-14 3 views
2

Мне нужно извлечь некоторые растровые изображения из файла .msstyles (файлы визуального стиля Windows XP), и я не уверен, с чего начать. Кажется, я не могу найти документацию о том, как это сделать, и формат файла кажется двоичным и не просто анализируется. Я был в состоянии извлечь растровое изображение само по себе с помощью:Как разбирать файл .msstyles?

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

Однако, я также нужна информация, относящаяся к растровому изображению, как размеры полей, интервал и количество «образов» на растровом изображении. Есть ли у кого-нибудь опыт работы с этим или любыми ссылками на документацию, которую я могу использовать?

ответ

3

This сайт утверждает, что формат файла документирован не Microsoft.
Также найдено это в Wine Crossreference.
Надеюсь, что это поможет!

+0

Спасибо - документы помогли тонну. :) – 2008-11-15 05:16:57

1

Если вы хотите получить файлы из dll напрямую (помните, что msstyles - это DLL с другим расширением), вы можете посмотреть на Anolis Project.

Что касается фактического разбора этого материала, вы должны посмотреть на различные учебники по созданию msstyles для получения информации о том, как работают различные текстовые ресурсы в этом файле.

This Код статьи целиком, похоже, имеет то, что вы хотите, с небольшим вмешательством. A managed wrapper Существует и кажется довольно хорошим. В .Net WindowsForms также встроена функциональность, вы можете захотеть взглянуть на пространство имен System.Windows.Forms.VisualStyles, если хотите упростить доступ только для чтения.