Archived from http://sourceforge.net/docman/display_doc.php?docid=27026&group_id=131628, where the original is no longer available.
� 2005 Alexis ISAAC http://www.alexisisaac.net
Creative commons Attribution-ShareAlike
2.0 France
This file and the author of this file are not related with Macromedia. This document has been written to help the community but isn't an official document released by the creators of this file format. This document is the gatherering of all the informations I have been able to find about this file format.
The sol file format is composed of a header and a data block. The data block contains all the variables stored.
It is 16 bytes long and contains the following informations
54 43 53 4F
00 04 00 00 00 00
The data block contains the name of the Shared Object : 2 bytes for the length of the string([unsigned word]) + the string([String]).
An unknown block of 4 bytes of 00 : 00 00 00 00
Then all the variables.
All the variables inside the file root or inside an Object are structured this
way
00
if outside an Object or Array type value : 00
8 bytes [double]
type value : 01
1 byte [00
or 01
]
type value : 02
length of the string : 2 bytes [unsigned word]
string [String]
type value : 03
All the child items.
Ending tag : 00 00 09
type value : 05
Nothing
type value : 06
Nothing
Id of the pointed Object, Xml or Array counting from the begining of the file starting by 1. 2 bytes [unsigned word]
type value : 08
Number of items : 4 bytes [longunsigned word]
All the child items. (Names are strings even if only numbers are used)
Ending tag : 00 00 09
type value : 11
Time-Date : 8 bytes [double]
Time zone : 2 bytes (time_zone * -60) [signed word]
type value : 15
The XML is stored as a String with a length wich could be > 655535.
length of the string : 4 bytes [unsigned longword]
string [String]
double : http://en.wikipedia.org/wiki/Double_precision
string : http://en.wikipedia.org/wiki/UTF8
word : http://en.wikipedia.org/wiki/16-bit