2

我有一个通过 Internet 自行更新的应用程序,更新后的副本无法在运行 Leopard (10.5.8) 的 PowerPC 机器 (G5) 上运行。双击应用程序会产生一条消息,提示“您无法打开应用程序“ appname ”,因为此架构不支持它。” 但这是奇怪的部分:如果我使用 Finder 或使用cp -R命令复制应用程序,那么副本运行良好!然而,如果我ls -laeR在两个应用程序上都这样做,结果是相同的。我重新启动了机器,两个副本之间的差异仍然存在。

有时,重命名应用程序使其运行。经过几次尝试,我设法将其重命名回原来的名称,并且仍然可以运行。

如果这只是在一台机器上,我会认为它是磁盘损坏、宇宙射线或巫毒十六进制,但它是由客户报告的,然后我在自己的机器上复制了它。

任何想法可能导致这种行为?

4

2 回答 2

3

事实证明,启动服务数据库以某种方式将该应用程序标记为不受支持,我通过使用半秘密lsregister命令行工具转储数据库进行了验证。任何会改变应用程序的 mod 日期的东西,例如touch,足以让 Launch Services 醒来并闻到咖啡的味道。

于 2010-04-06T18:14:29.910 回答
0

对我来说,这听起来像是一个扩展属性或一些其他方面,没有被转移到程序文件的副本中。

也许尝试查看在应用程序包xattr的输出上运行命令ls -laeR

于 2010-04-06T03:15:45.153 回答