2017-07-06 110 views
0

当我需要使用Adobe AIR应用程序读取Flash Player的.sol时,我遇到共享对象文件的问题。Adob​​e 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

我能做些什么来解决这个问题?

+0

你不应该阅读所以这完全可以。只有**正确的方式来处理共享对象是连接到与记录** var SO:SharedObject = SharedObject.getLocal(“对象ID”,“本地路径”); ** – Organis

回答

2

Flash Player/AIR没有内置的方式直接读取.sol文件。当然,SharedObject类是您应该访问SO数据的方式,但它有一些限制,并且当您从特定的已知路径中读取数据时,它不能用于直接解析任何.sol文件。要阅读.sol文件,您需要使用FileStream,然后直接按照.sol格式解析ByteArray ......当然.sol使用AMF来存储数据,所以readObject应该适用于一部分,但文件格式(头等)是它自己的格式必须解析出来。不幸的是,在格式上找到很好的文档非常困难。还有一堆,以便读者在那里已经,您可能能够使用一个作为参考: