Adobe AIR读取Flash Player的.sol文件
问题描述:
当我需要使用Adobe AIR应用程序读取Flash Player的.sol时,我遇到共享对象文件的问题。Adobe AIR读取Flash Player的.sol文件
Flash播放器共享的路径对象是:
C:/Users/%username%/AppData/Roaming/Macromedia/Flash Player/#SharedObjects/%randomnumber%/localhost/
然而,Adobe AIR的共享路径对象是:
C:/Users/%username%/AppData/Roaming/%applicationname%/Local Store/#SharedObjects/#localhost/
我如何读取Flash Player的共享对象与Adobe AIR应用程序?
我想:
- 使用
FileStream
类打开.sol
文件与方法readObject
,但它不工作。 - 将
.sol
文件复制到Adobe AIR共享对象路径,并使用SharedObject
进行读取,但会发生Error #2134: Cannot create SharedObject
。
我能做些什么来解决这个问题?
答
Flash Player/AIR没有内置的方式直接读取.sol
文件。当然,SharedObject
类是您应该访问SO数据的方式,但它有一些限制,并且当您从特定的已知路径中读取数据时,它不能用于直接解析任何.sol
文件。要阅读.sol
文件,您需要使用FileStream
,然后直接按照.sol
格式解析ByteArray
......当然.sol
使用AMF来存储数据,所以readObject
应该适用于一部分,但文件格式(头等)是它自己的格式必须解析出来。不幸的是,在格式上找到很好的文档非常困难。还有一堆,以便读者在那里已经,您可能能够使用一个作为参考:
你不应该阅读所以这完全可以。只有**正确的方式来处理共享对象是连接到与记录** var SO:SharedObject = SharedObject.getLocal(“对象ID”,“本地路径”); ** – Organis