OE Classic uses open storage formats. This ensures that the data you create with it will be readable by some other program in the future even if you choose not to use OE Classic anymore. This page documents formats OE Classic uses and may be updated from time to time.
Unless you really know what you are doing, please DO NOT modify store folder files manually. If you do so, you can seriously damage program and it may not work as expected. Often, program must modify several files to do a single operation so unless you manually replicate all of these modifications it may also cause malfunction. For these reasons if you do modifications, you do it entirely on your own risk and we do not take any responsibility or offer any support or help with that.
To make it all really simple, OE Classic stores all data inside just one folder. It uses standard LocalAppData folder for storing program settings and data, just like many other programs do.
To go straight into this folder on Windows 7, 8, 10 and 11 you can press Windows logo key on keyboard (which opens Start menu or Start screen) and then type %LocalAppData%\OEClassic\User (and press Enter).
You may also notice that there are some other folders inside OEClassic folder, except the User folder. These are used by the program and you should not modify them. Your own data is stored in the User folder only.
Windows OE Classic store folder |
Windows 11, Windows 10, Windows 8, Windows 7, Windows Vista: C:\Users\{YOUR-USERNAME}\AppData\Local\OEClassic\User Where {YOUR-USERNAME} is the actual username of the user as configured in your copy of Windows. |
Windows XP, Windows 2000: C:\Documents and Settings\{YOUR-USERNAME}\Local Settings\Application Data\OEClassic\User Where {YOUR-USERNAME} is the actual username of the user as configured in your copy of Windows. |
Custom location: You can alter store folder location via registry key under HKEY_CURRENT_USER\Software\OEClassic key name UserDataLocation (path must be without trailing backslash). Make sure you modify this while the program is not running. Next time you run the program, it will use new folder location. If it doesn't find any files inside, new folders and files will be created. You can use local paths for files (e.g. C:\Email\OEClassicData) and UNC paths (e.g. \\server\share\Email\OEClassicData). Note that if you use shared storage folder or network-attached storage (NAS), only one copy of OE Classic must running and using it at any given moment. |
Store folder on Windows 11, Windows 10, Windows 8, Windows 7, Windows Vista
[C:] | - root folder (C: drive) |
[Users] | |
[John] | - this will be your username instead |
[AppData] | |
[Local] | |
[OEClassic] | - OE Classic data folder |
[User] | - folder to backup (everything inside) |
[John Smith] | - include in backup (folder) |
[Main Identity] | - include in backup (folder) |
_AddressBook.db | - include in backup (file) |
_Identity.db | - include in backup (file) |
Store folder on Windows XP, Windows 2000
[C:] | - root folder (C: drive) |
[Documents and Settings] | |
[John] | - this will be your username instead |
[Local Settings] | |
[Application Data] | |
[OEClassic] | - OE Classic data folder |
[User] | - folder to backup (everything inside) |
[John Smith] | - include in backup (folder) |
[Main Identity] | - include in backup (folder) |
_AddressBook.db | - include in backup (file) |
_Identity.db | - include in backup (file) |
[OEClasic] \ [User] folder contents (identity folders)
[User] | - contains all of the data you created |
[John Smith] | - contains an identity |
_Config.ini | |
_Folders.db | |
Inbox.db | |
Inbox.mbx | |
... | - more files here... |
[Main Identity] | - contains another identity |
_Config.ini | |
_Folders.db | |
Inbox.db | |
Inbox.mbx | |
... | - more files here... |
_AddressBook.db | - file contains contacts for all identities |
_Identity.db | - file contains identity information |
This example uses Windows XP as source and Windows 11 as destination. But it applies to any operating system on which OE Classic works. So you can move from Windows XP to Windows 7 or any other combination.
Please do not modify store folder files manually. Read the note on top of this page.
In OE Classic, system files are prefixed with underscore ("_" character). User created folders can have any other name that doesn't begin with underscore (program prevents user to create files which begin with underscore).
Store folder MBX files don't have any practical size limits but in case if you are wondering - 2 gigabytes per single message in a folder and 8 exabytes per entire folder file (8,589,934,592 gigabytes).
MBX is binary file format (public domain), although it can be read (in most cases) in plain-text editor (e.g. Notepad). Parts which are headers can be treated as text and parts which contain message raw data should be treated as binary.
Each MBX file begins with 42 byte header - usually:
MBX HEADER [mbx][CR][LF] - general header vers=1.00[CR][LF] - MBX file version pack=none[CR][LF] - packing/compression encr=none[CR][LF] - encryption [CR][LF]
In version 1.00 "pack" and "encr" are unused (always "none") but if they change, whole header will likely remain the same length in the future.
Following the initial header are messages, one after another. Each message is also preceded by message header:
MESSAGE HEADER [hdr][CR][LF] - message header mlen=1234ABCD[CR][LF] - hexadecimal message length, 32-bit (unsigned) [msg][CR][LF] - indicates message will begin in next row
The above header is 29 bytes in length but it should not be considered fixed length. In future versions, [hdr] section may be expanded with more lines (line order should not be assumed - they can be in any order). Ending of header and beginning of message is indicated by [msg][CR][LF].
Following is raw message data as received from server. It may contain binary characters like 0x00 or 0xFF so it cannot be considered plain-text data. Length in file is exactly as defined in message header "mlen" field (excluding the last [CR][LF] which is not part of the message - it ensures new message header begins in the next row).
Message ends with [CR][LF] after which another message header begins and so on until the end of the file. So the whole MBX file looks like this:
MBX HEADER MESSAGE HEADER RAW MESSAGE DATA[CR][LF] MESSAGE HEADER RAW MESSAGE DATA[CR][LF] ... MESSAGE HEADER RAW MESSAGE DATA[CR][LF] END OF FILE - Last [CR][LF] (above) is the actual end of file