最近在研究SharedObject,遇到了一些问题:
在帮助文档中说:
localPath 一个可选字符串参数;该参数指定指向创建共享对象的 SWF 文件的完整路径或部分并确定共享对象的本地存储位置。默认值是完整路径。
如果第二个参数localPath 不写,那么就是默认是一个完整路径。
举个例子:1.swf的地址是:http://www.xinchao7.com /bbs/1.swf(或是F:bs1.swf),那么参数localPath 可以写成"/bbs/1.swf"或"/bbs"甚至"/",即可以写成
myLSO = SharedObject.getLocal("mydata","/bbs/1.swf " );
那么这些写法对SharedObject存储位置有什么影响呢?据说存储的路径与FLASH的地址是相对应的,即与localPath的字符串地址是相对 应的,[B]我曾经也对保存的位置可以随意变动抱有幻想[/B],但多方查询和实验发现[B]本地的SWF[/B]只能保存在“Documents and Settings用户名Application DataMacromediaFlash Player#SharedObjects***localhost ”中,可是在这个文件夹里可以相对地改变保存位置,但这又有什么用呢??
用处就在于多个SWF共用同一个SOL文件,就例如:
myLSO = SharedObject.getLocal("mydata", "/" );
它可以使其它的SWF也能使用localhost 文件夹中的mydata.sol,也可以使同一个SWF在不同文件夹中都能使用同一个保存文件mydata.sol。
上面的说法是一个网友说的,我不知道对不对,但是总感觉应该是 只有同一个swf文件才能读取自己保存的sol文件。
希望有高手可以给我解答!!!
通过这两天的学习发现不要幻想着getlocal地址能随意改动!!!