icoutils ======== The icoutils are a set of program for extracting and converting images in Microsoft Windows icon and cursor files. These files usually have the extension .ico or .cur, but they can also be embedded in executables and libraries (.dll-files). Such embedded files are referred to as resources. The icotool program converts icon and cursor files into a set of PNG images. (Each icon/cursor file may contain multiple images, usually of different sizes and with different number of colors.) Icotool can also create icon/cursor files from PNG images. Previously icotool would generate XPM images, but as support for creating icon/cursor files was added, it was decided that generating PNG was better. The wrestool program can extract both icons and cursors from 32-bit ("PE") and 16-bit ("NE") executables and libraries. It writes .ico and .cur files that can be used on Windows operating systems as well. Other types of embedded resourced can be extracted as well (but only in raw form - icons and cursors require additional conversion before they can be saved as icon and cursor files). The extresso script (written in perl) automates the tasks of extracting and converting icons. This is done with the help of of special resource scripts. The purpose of these scripts are to give names to the icons in the executables and libraries. The icoutils were designed to compile and run on Linux systems with GNU libc (2.0 or later). However, with some tweaking, it might work on other non-Linux systems as well. Copyright and License ===================== The icoutils are copyright (C) 1998-2002 Oskar Liljeblad. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Requirements ============ The following programs are required to build icoutils: * gcc 2.95 or later. The icoutils use some features specific to gcc 2.95 and later (such as macros with variable number of arguments). The following programs are required at run-time: * GNU libc6 2.0 or later The icoutils use some GNU-specific extensions to the C library. Installation ============ The icoutils programs use GNU autoconf and automake. This means you usually just have to do $ ./configure $ make to compile the program. If you want to install the necessary files, run the following as as root: # make install Note that only icotool and wrestool (and their manual pages) are installed. For more information on configure and autoconf, consult the INSTALL document in this directory. Usage ===== See the manual pages or the documentation in the doc subdirectory. Homepage ======== The latest version of the icoutils can be downloaded from http://www.student.lu.se/~nbi98oli/ Feedback ======== The author of icoutils and this document, Oskar Liljeblad, can be reached via email: oskar@osk.mine.nu Please send bug reports, suggestions, ideas or comments in general to me. Known Bugs ========== * Aside from not compiling on all systems, wrestool MAY not work on non-x86 machines due to endian-ness. However, icotool should work on little as well as big endian machines. * There is no relocation support for 16-bit Windows binaries. If you find a massive deposit of such binaries, let me know. Possible things to do ===================== Please see the TODO document. -