问题标签 [shared-objects]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
699238 浏览

linux - ld 找不到现有的库

我正在尝试在此 Debian lenny 系统上将应用程序与 g++ 链接。ld 抱怨找不到指定的库。这里的具体示例是 ImageMagick,但我在其他一些库中也遇到了类似的问题。

我用以下方式调用链接器:

ld抱怨:

但是,libmagic 存在:

我如何进一步诊断这个问题,可能出了什么问题?我在做一些完全愚蠢的事情吗?

0 投票
3 回答
1576 浏览

apache-flex - 检索 SharedObject 时出现 Flash/Flex 错误 #1063

我有一个基于 Flex 3 构建的部件应用程序,但部件列表有问题。零件清单使用两个对象:

  • 部分
  • ArrayOfPart

我将部件列表本地缓存在 SharedObject 中。这几个月来一直运行良好。我在 Part 类中添加了一个新的布尔属性并重新导入了 Web 服务(这不应该影响任何东西),现在,我可以很好地保存 ArrayOfPart SharedObject,但是当我尝试检索 SharedObject 时,我得到“ArgumentError:错误 #1063: ArrayOfPart 上的参数计数不匹配。预期为 1,得到 0。然后它完全删除了我的 SOL 文件。

(我在 Part 和 ArrayOfPart 上使用了 RegisterClass,所以它们都可以序列化为 SharedObjects)

这是我收到错误的步骤:

保存共享对象:

验证 SharedObject:

  • SharedObject PartsList.sol存在于应有的位置
  • 我打开了 SharedObject 文件,ArrayOfPart 数据看起来有效

重新启动应用程序,它会从 SharedObject 中检索部件列表。这是引发错误 #1063 并导致 sol 文件被删除的行:

看起来数据保存在 SharedObject 中时可能格式不正确?这可能吗?

0 投票
2 回答
949 浏览

apache-flex - 当 URL 中存在查询字符串时,SharedObject (Flex 3.2) 行为异常

摘要:下面详述的行为似乎表明,如果您在 www.someplace.com 上的应用程序通过 SharedObject 设置/检索数据,那么如果用户在 someplace.com 上点击您的应用程序,则会出现某种 .sol 冲突,然后在someplace.com?name=value。

任何人都可以证实或反驳这一点吗?


我正在开发一个为用户提供登录页面的 Flex Web 应用程序。当用户登录后,他/她会看到一个与“组”相关联的“房间”。

我们将最后访问的房间/组组合存储在 SharedObject 中 - 因此,当给定用户登录时,他们会被带到他们最近处于活动状态的房间。

这很好用,但我们也有一个自动登录系统,该系统涉及用户单击应用程序 url 的链接,并附有查询字符串。这些链接有两种类型。

1)查询字符串包括username、groupId、roomId

2) 查询字符串只包含用户名

因为我们工作速度很快,而且只有少数开发人员,所以自动登录系统是建立在 last-vist 系统上的。在自动登录过程中,会检查 url,如果在查询字符串中找到 groupId 和 roomId 值,则打开 SharedObject 并且最后访问组/房间 id 值被参数值覆盖。

这也可以正常工作,当应用程序遇到第二种类型的查询字符串(没有 groupId 和 roomId 参数)时,应用程序会像往常一样转到 SharedObject 以获取存储的房间和组 ID 值。这就是问题所在:

它返回的值是最后一个房间/组参数值是什么,而不是最后一次访问房间/组值是什么。

如果给定用户从未使用包含组和房间 ID 值的查询字符串访问应用程序,则应用程序会从 SharedObject 获取空值。

它需要一些挖掘,但看起来正在发生的是,如果 URL 中存在查询字符串,则第二组数据正在存储/预期在 SharedObject 中。

在文本编辑器中查看 .sol 文件时,我会看到更多未翻译的代码以及其他组和房间值,一旦我使用包含查询字符串的 URL 访问应用程序。

我在网上没有找到任何关于此的内容,但这可能只是由于缺乏必要的搜索技能。

有没有其他人遇到过类似的事情?或者你知道如何解决这个问题吗?

我已经尝试将 Security.exactSettings 设置为 false,我真的希望这会奏效。

0 投票
7 回答
3091 浏览

c++ - 便携式共享对象?

是否可以像 Windows 中的 DLL 一样以可移植的方式使用共享对象文件?

我想知道是否有一种方法可以为 Linux 提供一个可立即使用的编译库。就像您可以在 Windows 中编译 DLL 一样,它可以在任何其他 Windows 上使用(好的,不是任何其他的,但在大多数 Windows 上都可以)。

这在Linux中可能吗?

编辑:
我刚刚醒来并阅读了答案。有一些非常好的。
我不是想隐藏源代码。我只是想提供一个已经编译好的可以使用的库,所以没有编译经验的用户不需要自己做。
因此,我们的想法是提供一个可以在尽可能多的不同 Linux 上运行的 .so 文件。
该库是用 C++ 编写的,使用 STL 和 Boost 库。

0 投票
2 回答
1169 浏览

php - 我想通过 RTMP 从 FMS 服务器下载 Remote SharedObject

我想通过脚本联系 FMS 服务器并下载持久的 Remote SharedObject。

Flash 程序连接到 FMS 服务器,打开一个 NetConnection,进行 SharedObject.getRemote 调用。我想通过 PHP、Ruby、Perl 等访问这些信息,以便在脚本中使用。

我了解此信息通过 RTMP 协议作为 AMF 对象发送到 Flash 播放器。因为它是 RTMP 而不是 HTTP,所以我不能使用 SabreAMF 客户端,因为它使用不支持 RTMP 的 cURL。

有人对如何做到这一点有任何想法吗?

0 投票
1 回答
2206 浏览

apache-flex - 将 flash.utils.Dictionary 正确序列化为 SharedObject

我的 Flex 项目中有一个名为 HashMap 的便利集合类,它本质上是 flash.utils.Dictionary 的包装器,带有一堆便利方法和一个添加的(同步的)ArrayCollection,以便我可以将 HashMap 传递给需要的可绑定控件一个数组集合。这一切都很好。

我刚刚发现,不能正常工作的是将 HashMap 放在本地 SharedObject 中。

注册该类会导致它被存储并作为正确的类型返回,并且 ArrayCollection 成员很好地返回,但是 Dictionary 不存储它的数据..

这是一个片段:

这就是相关的东西。让 Dictionary 正确存储自身的过程是什么?实际上,我必须使 ArrayCollection 瞬态,因为现在每次刷新 SO 时,我都会获得(在字典中唯一键入的)数据的另一个副本。

0 投票
1 回答
2290 浏览

c++ - Linux 上来自共享对象 (.so) 的异常

我有一个名为 ftest 的测试程序。它加载包含测试的 .so 文件并运行它在其中找到的测试。其中一个测试加载并运行一个 .so,其中包含用于我们的 O/RM 的 Postgres 数据库驱动程序。

当 Postgres 驱动程序抛出在该 .so 文件中定义的异常(或它链接到但 ftest 未链接到的文件)并被测试框架捕获时,异常析构函数会触发段错误。

只要编译的异常位于已动态加载(使用 dload)的 .so 中,就会发生此段错误。

这种事情在具有相同架构的 Windows 中运行良好。我们真的不想限制自己只使用来自核心库的异常——插件应该可以自由地创建自己的异常类并正常处理它们。

异常是 std::exception 的子类。有时异常可能在库中定义(例如 libpqxx),这意味着异常有时也超出了我们的控制范围。

使用以下内容引发异常:

并被使用:

是否需要一些特殊的编译器选项才能使其正常工作?我们是否需要通过切换来抛出异常throw new exception_class( args )(我们真的不想这样做)?

0 投票
2 回答
547 浏览

flash - 如何以编程方式确定 Flash 存储本地共享对象的位置

我正在为 Flash 电影编写一些自动验收测试(使用 iMacros 驱动电影)。

我需要在每次测试运行之前通过清除存储在本地共享对象中的设置来“重置”测试环境。

我可以通过删除以下文件手动执行此操作:

C:\Documents and Settings{用户名}\Application Data\Macromedia\Flash Player#SharedObjects\FQSTGCV7\{site-url}

显然我想自动化这个删除步骤;但我想知道如何以非机器特定的方式确定上述路径。

在 .NET 中,

"C:\Documents and Settings{username}\Application Data\Macromedia\Flash Player#SharedObjects\" 显然是

我如何确定另一台机器上的“FQSTGCV7”是什么?有环境变量吗?#SharedObjects\ 下面只有 1 个目录吗?

谢谢

0 投票
2 回答
2792 浏览

actionscript-3 - SharedObject 支持哪些数据类型?

我知道用 SharedObject 存储字符串和数字是一件简单的事情,而且我也熟悉这种事情:

但是,我正在尝试存储 GameStage 类的对象,该类是我定义的用于保存有关我的游戏中的阶段的数据。这种类型的东西似乎不起作用:

此代码不会引发错误,但是当我稍后尝试检索阶段数据时,如下所示:

我收到此错误:

我想我的问题是:究竟什么样的数据类型可以存储在 SharedObject 中?我在网上看到的所有地方都用“任何可以在 Flash 中使用的东西”回答了这个问题,这不是很具有描述性——显然我的 GameStage 类也可以在 Flash 中使用。是否有一些关于从我不知道的 SharedObject 检索数据的事情?

我的预测是我将无法以这种方式存储我的舞台数据。如果是这种情况,有人可以提出另一种保存数据的方法吗?

0 投票
4 回答
49505 浏览

c++ - 如何在 C++ 中加载共享对象?

我有一个共享对象(so - Windows dll 的 Linux 等效项),我想导入它并与我的测试代码一起使用。

我敢肯定这不是那么简单;)但这是我想做的事情..

我认为这是一个非常基本的问题,但我找不到任何让我在网上搜索的东西。