当我需要使用Adobe AIR应用程序读取Flash Player的.sol时,我遇到共享对象文件的问题。
Flash Player共享对象的路径为:
C:/Users/%username%/AppData/Roaming/Macromedia/Flash Player/#SharedObjects/%randomnumber%/localhost/
但是,Adobe AIR共享对象的路径是:
C:/Users/%username%/AppData/Roaming/%applicationname%/Local Store/#SharedObjects/#localhost/
如何使用Adobe AIR应用程序读取Flash Player共享对象?
我试过了:
FileStream
类使用.sol
方法打开readObject
文件,但不起作用。.sol
文件复制到Adobe AIR共享对象路径,并使用SharedObject
阅读,但Error #2134: Cannot create SharedObject
发生。我该怎么做才能解决这个问题?
答案 0 :(得分:3)
Flash Player / AIR没有内置方式直接读取.sol
文件。当然,SharedObject
类是您应该访问SO数据的方式,但是它带有限制,并且当您注意到从特定已知路径读取时,它不能用于解析任何.sol
直接文件。要阅读.sol
文件,您需要使用FileStream
,然后直接按照ByteArray
格式解析.sol
...当然.sol
使用AMF存储数据readObject
应该适用于一部分,但文件格式(标题等)是它自己的格式,必须解析出来。不幸的是,找到关于格式的好文档非常困难。已经有很多SO读者,你可以使用一个作为参考: