| <chapter id="tools"> | |
| <title>Tools</title> | |
| <sect1 id="bin2res"> | |
| <title>bin2res</title> | |
| <para> | |
| Written by &name-juergen-schmied; <email>&email-juergen-schmied;</email> (11/99) | |
| </para> | |
| <para> | |
| (Extracted from <filename>wine/documentation/resources</filename>) | |
| </para> | |
| <para> | |
| This document desribes tools for handling resources within wine | |
| </para> | |
| <sect2> | |
| <title>bin2res</title> | |
| <para> | |
| This tool allows the editing of embedded binary resources | |
| within <filename>*.rc</filename> files. These resources are | |
| stored as hex dump so they can be stored within the cvs | |
| tree. This makes the editing of the embedded bitmaps and | |
| icons harder. | |
| </para> | |
| </sect2> | |
| <sect2> | |
| <title>Create binary files from an <filename>.rc</filename> file</title> | |
| <para> | |
| The resources in the <filename>.rc</filename> file have to | |
| be marked by a header: | |
| </para> | |
| <programlisting> | |
| /* BINRES idb_std_small.bmp */ | |
| IDB_STD_SMALL BITMAP LOADONCALL DISCARDABLE | |
| { | |
| '42 4D 20 07 00 00 00 00 00 00 76 00 00 00 28 00' | |
| </programlisting> | |
| <para> | |
| <constant>BINRES</constant> is the keyword followed by a | |
| filename. <command>bin2res -d bin rsrc.rc</command> | |
| generates binary files from all marked resources. If the | |
| binary file is newer it gets not overwritten. To force | |
| overwriting use the <parameter>-f</parameter> switch. | |
| </para> | |
| </sect2> | |
| <sect2> | |
| <title>Create a <filename>.rc</filename> file from binaries</title> | |
| <para> | |
| Put a header followed by empty brackets in the | |
| <filename>.rc</filename> file. | |
| </para> | |
| <programlisting> | |
| /* BINRES idb_std_small.bmp */ | |
| {} | |
| </programlisting> | |
| <para> | |
| Then run <command>bin2res rsrc.rc</command>. It will merge | |
| the resources into the <filename>.rc</filename> file if the | |
| binary resources are newer than the.rc file. To force the | |
| resources into the <filename>.rc</filename> file use the | |
| <parameter>-f</parameter> switch. If there is already a | |
| resource with the same filename in the | |
| <filename>.rc</filename> file it gets overwritten. | |
| </para> | |
| </sect2> | |
| <sect2> | |
| <title>output of <command>bin2res</command></title> | |
| <programlisting> | |
| bash-2.03# ../../tools/bin2res -d bin shres.rc | |
| [000.ico:c][003.ico:c][008.ico:s][015.ico:s][034.ico:s] | |
| </programlisting> | |
| <para> | |
| <literal>s</literal> means skipped, <literal>c</literal> | |
| means changed. | |
| </para> | |
| </sect2> | |
| </sect1> | |
| </chapter> | |
| <!-- Keep this comment at the end of the file | |
| Local variables: | |
| mode: sgml | |
| sgml-parent-document:("wine-doc.sgml" "set" "book" "part" "chapter" "") | |
| End: | |
| --> |