ESEDatabaseView

ESEDatabaseView v1.15
Copyright (c) 2013 Nir Sofer
Web site: http://www.nirsoft.net

Description

ESEDatabaseView is a simple utility that reads and displays the data stored inside Extensible Storage Engine (ESE) database (Also known as 'Jet Blue' or .edb file). It displays a list of all tables available in the opened database file, allows you to choose the desired table to view, and then when you choose a table, it displays all records found in the selected table. ESEDatabaseView also allows you to easily choose one or more records, and then export them into comma-delimited/tab-delimited/html/xml file, or copy the records to the clipboard (Ctrl+C) and then paste them into Excel or other spreadsheet application.

System Requirements

This utility works on any version of Windows, starting from Windows 2000 and up to Windows 8. Both 32-bit and 64-bit systems are supported. esent.dll (The dll file of Extensible Storage Engine) is not required to read the database.

Versions History

  • Version 1.15:
    • Added 'Open Recent File' menu, which allows you to easily open the last 10 database files that you previously opened.
  • Version 1.10:
    • Added 'Open Locked IE10 Database' option, which copies the locked database file of Internet Explorer 10 (WebCacheV01.dat or WebCacheV24.dat) into a temporary filename, and then opens the temporary filename in ESEDatabaseView. You can use this option to easily view the cache/history/cookies information stored by IE10.
  • Version 1.07:
    • Fixed the flickering appeared while scrolling the database records.
  • Version 1.06:
    • Added 'Convert Date/Time From GMT To Local Time' option.
  • Version 1.05:
    • Added command-line support
  • Version 1.00 - First release.

Known Limitations

  • Currently, ESEDatabaseView is somewhat a Beta version. It generally reads the ESE databases properly, but in tables with complex data structure, you may experience the following problems:
    • Some fields in some of the records may display incorrect value or display empty string while it actually contains some data.
    • ESEDatabaseView may hang/stop responding when loading a table with large amount of data.

Example for ESE Databases

ESE Databases are used by many Microsoft products. Usually, the file extension of ESE database is .edb, but in some products the file extension is different.
Here's some examples for .edb files used by Microsoft products:
  • contacts.edb - Stores contacts information in Microsoft live products.
  • WLCalendarStore.edb - Stores calendar information in Microsoft Windows Live Mail.
  • Mail.MSMessageStore - Stores messages information in Microsoft Windows Live Mail.
  • WebCacheV24.dat and WebCacheV01.dat - Stores cache, history, and cookies information in Internet Explorer 10.
  • Mailbox Database.edb and Public Folder Database.edb - Stores mail data in Microsoft Exchange Server.
  • Windows.edb - Stores index information (for Windows search) by Windows operating system.
  • DataStore.edb - Stores Windows updates information (Located under C:\windows\SoftwareDistribution\DataStore )

Start Using ESEDatabaseView

ESEDatabaseView doesn't require any installation process or additional dll files. In order to start using it, simple run the executable file (ESEDatabaseView.exe) and then use the 'Open ESE Database File' option (Ctrl+O) to open the desired .edb file. You can also drag the database file from Explorer window into the window of ESEDatabaseView.

After opening the desired database file, the combo-box located below the toolbar is filled with the list of all tables found in the database. By default, MSysObjects table is selected and displayed in the main window of ESEDatabaseView. MSysObjects is a system table available in all ESE databases which provides the list of all tables and fields stored in the database.
In order to view the content of another table, simply choose the desired table in the combo-box located below the toolbar.

By default, the table is sorted according to the first column, but you can sort by another field, simply by clicking the desired column header. The sorting is made according to the type of the field, so... for example, if the field is an integer value, then ESEDatabaseView will use a numeric comparison in order to sort the column properly.

You can select one or more records (or select all records with Ctrl+A) and then export them into text/csv/tab-delimited/html/xml file, by using the 'Save Selected Items' option. You can also copy the selected records into the clipboard (Ctrl+C) and then paste them (Ctrl+V) into Excel or other spreadsheet application.

Command-Line Options

/table <Database Filename> <Table Name> | Specifies the database and table to open.
/stext <Filename> | Save the database table into a regular text file.
/stab <Filename> | Save the database table into a tab-delimited text file.
/scomma <Filename> | Save the database table into a comma-delimited text file (csv).
/stabular <Filename> | Save the database table into a tabular text file.
/shtml <Filename> | Save the database table into HTML file (Horizontal).
/sverhtml <Filename> | Save the database table into HTML file (Vertical).
/sxml <Filename> | Save the database table into XML file.
/sort <column> | This command-line option can be used with other save options for sorting by the desired column. The <column> parameter can specify the column index (0 for the first column, 1 for the second column, and so on) or the name of the column, like "StatusState" and "CalculatedBuddyIdentifier". You can specify the '~' prefix character (e.g: "~CalculatedBuddyIdentifier") if you want to sort in descending order. You can put multiple /sort in the command-line if you want to sort by multiple columns.

Examples:
ESEDatabaseView.exe /table "c:\temp\contacts.edb" "SimpleContact-v081111-0122-1303" /scomma c:\temp\1.csv
ESEDatabaseView.exe /table "c:\files\contacts.edb" "SimpleContact-v081111-0777-1111" /shtml c:\files\1.html /Sort "CalculatedBuddyIdentifier"

Translating ESEDatabaseView to other languages

In order to translate ESEDatabaseView to other language, follow the instructions below:
  1. Run ESEDatabaseView with /savelangfile parameter:
    ESEDatabaseView.exe /savelangfile
    A file named ESEDatabaseView_lng.ini will be created in the folder of ESEDatabaseView utility.
  2. Open the created language file in Notepad or in any other text editor.
  3. Translate all string entries to the desired language. Optionally, you can also add your name and/or a link to your Web site. (TranslatorName and TranslatorURL values) If you add this information, it'll be used in the 'About' window.
  4. After you finish the translation, Run ESEDatabaseView, and all translated strings will be loaded from the language file.
    If you want to run ESEDatabaseView without the translation, simply rename the language file, or move it to another folder.

License

This utility is released as freeware. You are allowed to freely distribute this utility via floppy disk, CD-ROM, Internet, or in any other way, as long as you don't charge anything for this and you don't sell it or distribute it as a part of commercial product. If you distribute this utility, you must include all files in the distribution package, without any modification !

Disclaimer

The software is provided "AS IS" without any warranty, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The author will not be liable for any special, incidental, consequential or indirect damages due to loss of data or any other reason.

Feedback

If you have any problem, suggestion, comment, or you found a bug in my utility, you can send a message to nirsofer@yahoo.com