----------------------------------------------

Resource Hacker™ - Version 3.4.0

24 march 2002.
Copyright 1999-2002 Angus Johnson

http://rpi.net.au/~ajohnson/resourcehacker
email: ajohnson@rpi.net.au

FREEWARE utility to view, modify, add, rename 
and delete resources in Win32 executables and
resource files. Incorporates an internal 
resource compiler and decompiler. Works on 
Win9x, WinNT, Win2000 and WinXP.

----------------------------------------------
Version History:
----------------------------------------------

24 March 2002 (Version 3.4.0):

  * 32bit Resource Files (*.res) can now also 
  be viewed and edited.
  * Added support for the following Dialog 
  extended style flags: WS_EX_LAYERED,
  WS_EX_NOINHERITLAYOUT, WS_EX_LAYOUTRTL and  
  WS_EX_NOACTIVATE.
  * All resource language ids (except those for 
  cursors and icons) can now be easily changed.
  * Bug Fix: LBS_NOINTEGRALHEIGHT and 
  LBS_MULTICOLUMN listbox style flags in dialogs 
  previously could not be combined.

14 January 2002 (Version 3.3.4):

  * Bug fix: Occasional error when trying to 
  compile large plain text resources.
  * Bug fix: Occasional error (introduced in 
  the previous update) when replacing icons.

6 January 2002 (Version 3.3.3):

  * Searching has been speeded up dramatically.
  * Numerous other minor improvements.

23 December 2001 (Version 3.3.2):

  * Bug fix: Export tables were being corrupted
    when modifying Dlls compiled with LCC-Win32.
  * Bug fix: Minor resource leak plugged.
  * Bug fix: Progressbar styles PBS_SMOOTH 
    and PBS_VERTICAL in resource Dialogs 
    were not being decompiled.  

7 December 2001 (Version 3.3.1):

  * Resources can now be renamed either via 
  the popup menu of the treeview control or 
  via the main menu (once the specific resource 
  has been selected in the treeview control).

  * Numerous other minor improvements and 
  bug fixes.

29 October 2001 (Version 3.2.10):

  * Bug fix: Resource Hacker™ caused an 
  "access violation" occasionally when trying
  to open 16bit executables (which aren't
  supported).

  * Bug fix: Occasional errors occured when 
  decompiling messagetables and accelerators. 

  * Bug fix: Closing Resource Hacker™ was 
  delayed due to Windows caching *.ini 
  updates. This made running RH scripts 
  within batch files difficult. 

7 August 2001 (Version 3.2.9):

  * Bug fix: Resource Hacker™ will now display 
  and edit resources stored in sections other 
  than the '.rsrc' section.

  * Bug fix: When closing Resource Hacker™ a 
  delayed closure of a mutex handle made running 
  RH scripts within batch files difficult.

  * Bug fix: Another commandline bug fixed.

  * Several minor functional improvements.

16 June 2001 (Version 3.2.8):

  * When editing dialog controls and the Editor 
  has focus, the control corresponding to the 
  current insertion point (if any) will be 
  highlighted automatically in the dialog preview.

  * When resources cannot be viewed due to 
  non-standard resource layouts (eg when an "EXE 
  compressor" has been used to shrink the file),
  a message to this effect will now be displayed.

  * Individual resource items' size will now be 
  displayed in the statusbar.

  * Bug fix: Commandline support was partially
  broken in a previous update.

  * Bug fix: Should now run on Win95 machines which
  still have the original ComCtl32.dll. 

  * Bug fix: Should now run on Win95 and Win98 
  machines which do not have ImageHlp.dll installed.
  (ImageHlp.dll is included on the Win98 install CD
  and is installed automatically with Internet 
  Explorer 3 or greater.)

8 April 2001 (Version 3.2.7):

  * DS_SETFONT is no longer decompiled into the
  STYLE statement of Dialog resources to avoid
  problems when recompiling scripts using 
  Microsoft's resource compiler.

  * Extended Dialog FONT definitions (font 
  weight, italics etc) are no longer displayed 
  in decompiled scripts unless they have been 
  changed to non-default values. This avoids 
  problems when trying to recompile these 
  scripts with both MS's and Borland's resource 
  compilers which still do not support full font 
  definitions for Dialogs.

  * Bug fix: Occasional error when saving
  non-standard resource types to *.res files.

10 March 2001 (Version 3.2.6):

  * Resources can now be added to executables
  which previously did not contain resources.

  * Bug fix (introduced in the last update):
  Unicode to multibyte character conversion
  was causing problems with some non-English
  resources.

3 March 2001 (Version 3.2.5):

  * Enhanced the Dialog Editor's functionality 
  when adding new controls.
  * The line number of Editor's insertion point 
  is now displayed on the left of the statusbar.
  * The Menu Preview is now able to display 
  popup menus which don't have a caption.
  * Bug fix (introduced in the previous update):
  Dialogs displaying bitmaps would no longer 
  always display the correct size of the bitmap.
  * Other minor improvements.

20 February 2001 (Version 3.2.4):

  * A Dialog Editor has been added and can be 
  activated by right clicking on a Dialog Preview.
  * Plain text resources can now be modified and 
  recompiled using the internal editor.
  * Bug-fix: Dialog scripts were not being 
  displayed if either the dialog width or 
  dialog height equalled zero.
  * Bug-fix: Occasionally a valid menu script 
  would raise an error when compiling.
  * Bug-fix: StringTable entries with more than 
  50 special characters (\t,\n etc) could not be 
  viewed and raised an error.


28 January 2001 (Version 3.2.3):

  * The Dialog Preview/Designer is now detached 
  from the main window.
  * Whenever a control is selected in the 
  Dialog Designer, its definition in the script will also 
  be flagged with a red marker.
  * Several minor bug fixes.

14 January 2001 (Version 3.2.2):

  * Programs which are modified will now have their 
  CheckSums updated too.
  * Combobox controls in the preview dialog now
  have resizing handles which reflect the size of its 
  dropdown window (ie consistent with the dialog script).
  * A control can now be deleted by using the DEL key 
  once it has been selected in a preview dialog.
  * Bug fix: Resource Hacker™ crashed when Alt+C 
  was pressed when the Preview Dialog had focus. 

9 January 2001 (Version 3.2.1):

  * Numerous bug fixes: 
  - STRINGTABLE with StringID = 0 will now compile; 
  - ACCELETATOR recompile bug fixed.
  - Old style bitmaps will now be displayed; 
  - A maximised state will be retained between sessions; 
  - Alt+C will now compile when Preview Dialog has focus; 
  - Text ending with doubleslashes (eg: "bug\\") will compile;
  - DIALOG scripts containing MENU or CLASS statements 
  would occasionally raise an error on compiling. 
  - FONT statement in DIALOGEX scripts now fully supports 
  FontWeight, Italic and FontCharset parameters.
  - Several other minor bug fixes/cosmetic improvements.

1 January 2001 (Version 3.1):

  * Most-Recently-Used file list added to File menu.

  * Bug fix: Unusual characters in filenames would 
  not be correctly read by the commandline script
  parser.

  * Visual redesign tool for dialogs improved.

  * Warned dialog added whenever leaving a resource 
  which has been modified but not recompiled.

  * Edit menu added.

  * Images can now be copied to the clipboard.

  * User defined resources containing just plain text 
  will now be displayed as text, not as binary data.

12 December 2000 (Version 3.0):

  * Resource items can now be added from files 
  of any binary type, no longer needing to compile 
  them into *.res files first. This includes, but is not 
  restricted to image files (*.ico, *.cur, *.bmp).

  * Commandline Scripting added. All the functionality 
  of Resource Hacker™ (apart from viewing resources) 
  can now be accessed from the commandline 
  without having to open Resource Hacker™.

  * Added Any File (*.*) option to Open File Dialog
  File types (no longer limited to exe, dll, ocx and
  cpl files). However, the file must still be a 
  Win32 PE format file.

  * Save As Dialog now warns users attempting to
  save resources to non-existant directories.

  * Bug fix: MSVC++ debug table offsets were not 
  being updated when resources were modified.

  * VersionInfo resources can now be modified etc.

  * Numerous other minor improvements.

1 November 2000 (Version 2.6): 

  * Text search added - find resource items 
  containing text compiled in both ANSI and 
  UNICODE formats.

  * "File Save" menu option added. The original 
  file is backed up if a backup copy does not 
  already exist. (eg: MyProgram.exe will be copied 
  to MyProgram_original.exe, unless it already 
  exists, before being modified.) 

  * Bug Fix: VersionInfo resources would 
  occasionally not decompile correctly.

10 September 2000 (Version 2.5): 

  * Resources can now be deleted.
  (nb: VersionInfo resources cannot be deleted).

  * Bug Fix: Modified applications occasionally 
  displayed the generic executable icon, 
  not the application's icon. 

  * Fixes to a couple of other minor bugs.

18  August 2000 (Version 2.4.0.4): 

  * Bug Fix: Would not compile some Chinese text.

  * Improved translation support. Scripts are now 
  compiled using the codepage appropriate to the 
  internal editor's selected font rather than the 
  operating system's default codepage.

  (Thanks to Frank Cheng for feedback while fixing 
  both these DBCS issues.)

  * Bug fix: Occasionally StringTable resources 
  would not be decompiled.

  * Bug fix: Accelerators would not compile if they 
  included the ASCII keyword.

   * The command line will now accept a filename 
  as a parameter.

  * The Samples.dll file is no longer included 
  in the download.

  * Homepage added: 
  http://rpi.net.au/~ajohnson/resourcehacker.


3  July 2000 (Version 2.4.0.3): 

  * Bug Fix: Bug introduced with changes in the 
  previous update which caused an error in 
  "Update all Resources" preventing any updates.

  * Bug Fix: Occasional bug when extracting 
  resources to a RES file.

  * A couple of very minor improvements to the 
  compiler have also been made.


26  May 2000 (Version 2.4.0.2): 

  * Multibyte character set support (Japanese, 
  Chinese etc) for the internal editor has been 
  added (with thanks to Bob Ishida for feedback 
  during debugging).

  * Bug fix: Cursors with multiple images were not 
  being correctly imported when replacing cursors.

  * Numerous other improvements and cosmetic changes.

  * A number of documentation errors in the 
  help file have also been fixed.


20  Apr 2000 (Version 2.3.0.6): 

  * The JPG and MIDI data formats are now 
  detected and displayed or played.

  * Bug Fix: WAVE, AVI and GIF formats were 
  not being detected in the RCDATA section.

  * Bug Fix: The folder where resource data 
  was last saved was not being stored between 
  sessions.

16  Apr 2000 (Version 2.3.0.5): 

  * The AVI and WAVE data formats are now 
  detected and displayed or played.

  * The GIF data format is now detected and 
  displayed (with thanks to Anders Melander 
  for TGifImage).

  * A number of sample resources have been 
  removed from the Resource Hacker™ executable 
  and placed in "Samples.dll". (This dll can be 
  deleted without affecting Resource Hacker™.)

13  Feb 2000 (Version 2.3.0.3): 

  * The editor's font can now be changed. 
  This enables changes to the editor's 
  font script (character code) which is 
  useful when translating resources.

  * Menu editor [Show/Hide] button added.

  * Coloured treeview cursor removed :-(.

  * Dialog controls now have coordinates 
  displayed when selected too. (see 
  version 2.3.0.2).

11  Feb 2000 (Version 2.3.0.2): 

  *Bug Fix: Major modifications to dll's still 
  occasionally failed. Now finally fixed.

  *The treeview window width can now be 
  adjusted. 

  *Resource Hacker's window size and  position 
  is now stored between sessions (in an *ini 
  file ) as are the folders for the last opened 
  and saved files. 

  *While moving or resizing dialog controls - 
  the control coordinates (in dialog units) 
  are now displayed in the panel located above 
  the dialog script.


9  Feb 2000 (Version 2.3.0.1): 

  *Resources can now be added.

  *LANGUAGE statements in resource scripts are 
  no longer "read-only".
  
  *Resources can now be updated with all 
  matching resources in an external resource 
  file (*.res) in a single operation.
  
  *Bug Fix: Replacing cursors & icons from
  resource files (*.res) was broken.


1  Feb 2000 (Version 2.2.0.1): 

  *Bug Fix: Modifying dll's occasionally 
  stopped them working (the relative virtual 
  addresses of sections following the resource 
  section were not being adjusted).

  *MESSAGETABLE and ACCELERATOR resources can 
  now also be edited and recompiled using the 
  internal editor.

  *Dialogs will be displayed even when they
  contain unregistered controls (a gray 
  rectangle will appear in the position of 
  each unregistered control).

  *Dialog editor now compiles controls defined 
  by using either of the following styles:

    CONTROL text, control-ID, control-class, 
            control-style, x, y, width, height

    CLASS_MAIN_STYLE text, control-ID, 
            x, y, width, height, control-style

  *Modified files now preserve the original 
  file date and time.

  *Resources (menus, dialogs, stringtables, 
  accelerators & messagetables) can now be saved 
  in a single operation to a single *.rc file.

  *Numerous other minor improvements.


17  Jan 2000 (Version 2.1.1.4): 

  *Bug Fix: Memory leak fixed.

  *Bug Fix: Numeric captions in dialog 
  resources were not compiled correctly.

  *Resources can now be saved to file as a binary.

  *Improved handling of special characters (tab, 
  newline, backslash & doublequote) in resource 
  scripts.

  *Dialog resource forms and controls can now be 
  visually moved and resized.


2 Jan 2000 (Version 2.0.1.2): 

  *DIALOG, DIALOGEX, MENU, MENUEX, STRINGTABLE 
  and BORLAND FORM resources can now be edited 
  and recompiled using the internal editor.

  *Bug Fix - large resources which were 
  displayed as hexidecimal took forever to load. 
  The display algorithm for these resources is 
  now much faster.

  *Bug Fix - Tab and Newline characters are now 
  converted to  \t  and  \n   respectively in 
  dialog script control captions.

  *Bitmap Exchange Dialog added - enables 
  viewing of bitmaps while selecting.

  *Individual icons are no longer scaled but 
  are displayed at their actual size.

  *Files can now be opened by dragging them 
  into Resource Hacker™.


12 Dec 1999 (version 1.0.0.5): 

  *Bug Fix - Exchanging cursors from *.cur files 
  was broken.

  *Bug Fix - Menu resource scripts did not always 
  decompile correctly.

  * Icon & Cursor Exchange Dialogs now display 
  selected images.

  *Icons & cursor resources are now hidden in 
  the 'Exchange Other Resources' dialog.

  *MENUEX and DIALOGEX resource scripts are now 
  properly supported.

  *Resource scripts now decompile control style 
  attributes too.

  *Borland Delphi form files now decompiled.

  *Accelerators now decompiled.

  *Help file added.


03 Dec 1999 (version 0.5.0.1): 

  *Initial Release.

