Smart file system
Applications compiled with Chameleon Flash have a smart file system
that enables you to leave
some files of your flash project unpacked and access them from the
compiled application in a friendly manner. This feature allows you
to create applications and presentations of absolutely any complexity.
It can be described as "a virtual file system
over the actual file system". It means that if the SWF file tries
to access a file that does not exist in the compiled application,
the virtual file system will try to load this file from the actual
file system as if the SWF file is located in the directory the application
is launched from.
Suppose we compile a directory with three files flash1.swf, flash2.swf
and flash4.swf and also the subdirectory 'somedir' with the file
flash5.swf in it.

Flash1.swf is the startup application file that calls the following
functions:
loadMovie(“flash2.swf”,0)
loadMovie(“flash3.swf”,0)
loadMovie(“flash4.swf”,0)
loadMovie(“somedir/flash5.swf”,0)
loadMovie(“somedir/flash6.swf”,0)
loadMovie(“flash7.swf”,0)
Let us save the compiled application to some directory on the hard
drive that contains the files flash3.swf, flash4.swf and the directory
'somedir' with the file flash6.swf in it.

And now let us see what the application will do in each case.
loadMovie(“flash2.swf”,0)
The application finds flash2.swf among its files and loads it.

loadMovie(“flash3.swf”,0)
The application cannot find flash3.swf among its files and loads
the file flash3.swf from the directory the application is located
in.

loadMovie(“flash4.swf”,0)
The application finds flash4.swf among its files and loads it. Though
flash4.swf exists even in the directory with the application, the
virtual file system inside the application has higher priority.

loadMovie(“somedir/flash5.swf”,0)
The application finds “somedir/flash5.swf” among its
files and loads it.

loadMovie(“somedir/flash6.swf”,0)
The application cannot find “somedir/flash6.swf” among
its files and loads the file flash6.swf from the hard drive from
the 'somedir' subdirectory of the directory with the application
file. 
loadMovie(“flash7.swf”,0)
The file is not loaded because this file exists neither in the application
nor in the directory the application is launched from.
|