English English  Deutsch Deutsch  Русский Русский

Flexible Hex Editor

Getting Started with FlexHex

FlexHex supports drag-and-drop and is integrated with the Windows Explorer so you can quickly and easily open files from the Explorer or drag-and-drop files onto FlexHex. Once you have opened a binary file in FlexHex, the main Hex Workshop Window is displayed for each file that is loaded in the hex editor.

Hex Edit Window

The leftmost Address Pane contains a list of hexadecimal addresses, each address indicates the position of the first byte on the line. The current address is shown in a different color and represents the input caret position.

The Hex Pane and the optional ANSI and UNICODE character panes display the data being viewed and edited. To edit data in the hex editor, position the cursor over the byte to edit. FlexHex keeps an unlimited Undo list. This list remembers all changes made, and allows for an event anywhere in the list to be undone.

FlexHex fully supports drag and drop operations. Just select a block of data and drag it to another place or even to another application.

drag and drop operations

Go ahead, experiment away! FlexHex has a powerful unlimited Undo and Redo, with clear action names to help you.

Modification Tracking Tools

The File Map shows the positions and sizes of the file areas. This is a graphic representation of the Area Pane and appears for existing files only (or after the first Save command).

Hex editor File Map

Area is a block of data created as a result of editing operation. For example, a file just opened consists of a single area of original data. Changing a byte in the middle of the file converts the layout to three areas - the original data before the changed byte, one byte long modified area, and the original data area from the changed byte to the end of the file.

Unchanged file

Now switch the editor to the insert mode (the status bar shows the current editing mode), go to address 00000004 (right before byte 44) and enter F0. This operation inserts byte F0 moving the data down, and the file map displays the new file layout:

Modified file

The Area Pane keeps the track of all the modifications made to the stream being edited and lists all the stream areas.

Area pane

Clicking an address in the Start column moves the caret to the beginning of the corresponding area. If you click the area size field, FlexHex will select the corresponding area. If the area has been moved, clicking the Shift field moves the caret to the position where the area originally was.

Hot Tracking the Changes

A rather typical usage scenario for a hex editor is running a program in a debugger while tracking the changes in the output file on each step. However, the file in the hex editor window remains the same, even if you know for sure it has been changed. The reason is obvious: the editor does not know the file has been modified, and you have to reload the file in order to see the changes made. It is true for any hex editor, that is, any except FlexHex.

With FlexHex you don't need to reload the same file over and over again - it detects any change made to the file and instantly updates the Edit window. This feature is called Hot Tracking, and gets enabled automatically for any file opened in the read-only mode.

Status Bar

The FlexHex status bar contains several useful indicators:

FlexHex status bar

Progress Indicator

When FlexHex performs a lengthy operation, this field shows the operation progress.

Stream/Selection Size Indicator

If there is an active selection, this indicator shows the size of the selected area. If no data is selected, it displays the size of the stream (i.e. file or drive) being edited.

Shift Indicator

When FlexHex is in the Insert mode, deleting or entering data moves the rest of the stream up or down. This will almost certainly corrupt a logical or physical drive; many binary files also contain position-based data fields. This indicator gives you a warning sign if some part of the original stream changed its location as a result of an editing operation.

Not shifted All unchanged original data blocks retain their original position.

Shifted At least one block of the original data has been moved.

Sparse Indicator

Grayed indicator (as on the screenshot above) means the stream is non-sparse. If you edit a very small locked file, you might see the indicator RESIDENT in this field. It means that NTFS keeps the file content in the file's MFT record, so the file does not occupy disk space.

Modification State

The three possible states for this indicator are UNCHANGED, MODIFIED, and READ-ONLY, which are self-explanatory.

Insertion Mode

In the default Overwrite mode the data being entered overwrites the existing data at the current position. When the Insert mode is active, the program moves the data at the current position to make place for the text being entered. Pressing the Insert key toggles the Insert/Overwrite mode.


The Tools / Settings menu command lets you specify the program settings and defaults.

Hex Editor Settings

The Tools / Customize command lets you fully customize the FlexHex user interface the way you want it.

Hex Editor customize

We Offer A Free Trial Version: Try The Software, Risk Free.

Download Hex Editor FlexHex runs on Windows NT/2000/XP/2003/Vista/7/8

Minimum hardware requirements:
Intel Pentium® or AMD K5 processor with 166 MHz