ShowString v2.0 build 040720


What is ShowString
------------------

This little tool shows all ASCII and UNICODE strings in a file. You can edit, copy, paste,
sort, search and much more. No installation required, all the information is stored in
the file ShowString.ini.


How does it work
----------------

ShowString scans the entire file character by character and depending on the options decides
whether it found a string or not. The progress bar is useful for bigger files, on my P4 2,54 
GHz the scan on a 10 MB-file takes approx. 5 seconds.


Menu
----

File    - Open          Open a file and show all strings
        - Save As       Save the strings as text-file
        - Save Changes  After editing or pasting you can save the modified file. The program
                        asks to backup the original file, appending .bak
        - Exit          Quit program

Strings - Update        Shows all strings, discards unsaved changes
        - Search        Case and non case sensitive string search
        - Replace       Case and non case sensitive string search/replace. It's recommended 
                        to preserve the original string length. The replace string can't be
                        longer than the original string to prevent program crashes
        - Options       see below

Help    - Help          not implemented, see this file instead :)
        - About         nice icon and some useful information


Options
-------

Stringlength Min / Max  Determines the stringlength, 
                        e.g. 4 - 10 shows all strings whose lenght is between 4 and 10

Range Min / Max         Range (in hex) of characters to look for
                        e.g. 30 - 39 searches for all numbers in a file ('0' = 30h, '9' = 39h)

Chars Incl / Excl       Characters you want to include / exclude in the search
                        e.g. you can include the german "Umlaute": 

Stringtype              ASCII, Unicode. Also search for properly nullterminated strings
                        possible

File paths              Where to look for files when open / save

Font                    Select font
Cancel                  Discard changes
Update                  Save options in file Showstring.ini and new string search according to
                        options


Sorting
-------

Clicking on a column header sorts the entire array in ascending / descending order (offset,
length, string).


Context menu
------------

Right click on a row to edit the string. It's recommended to preserve the original stringlength, missing characters are filled with spaces. The new string can't be bigger than the original one. 
Copy and paste to / from clipboard is also supported.


Unicode strings
---------------

To make handling of Unicode strings easier, all '/0' are internally converted to spaces as the
second byte. They're converted to '/0' when saving changes, but not when copy / paste etc. For 
that reason you have to input Unicode strings like this: "l o w - m e m o r y " (note the 
trailing space).


Notes
-----

* When sorting, the progress bar is NOT accurate (due to the sorting algo)!
* The listview doesn't show the entire string when they're too long, especially Unicode
  strings. This seems to be an internal behaviour of the listview control and doesn't
  affect the string itself.
* Please send bugreports to figugegl@bigfoot.com


figugegl
2 october 2004