17 四月, 2006

Aqua dock的一个bug: not release file handle in time

一直使用Aqua Dock作为Windows XP桌面的应用程序launcher。(In short, Aqua Dock is a task bar and a Windows program launcher that does it with Apple's style)。上面大多数items使用应用程序自带的icon("use system icon", 可以通过icon extractor从.exe文件中获取这些图标),指向Firefox的快捷项亦然。

今天,在Firefox自动升级到1.5.0.2版的过程中,碰到这个“升级失败”的提示:至少有一个文件无法更新。请确定关闭了所有其它应用程序并有修改文件的权限,然后重新启动Firefox。

登录用户是系统管理员,权限肯定是有的。那么应该是某个应用程序锁住了Firefox的某个文件,使得更新无法成功。

这个应用就是Aqua Dock。道理很简单,我逐个关闭其它应用,同时测试Firefox是否能够更新所有文件。直到我关闭了Aqua Dock后,升级才顺利完成。

我做了个简单的覆盖尝试,证实Aqua Dock确实会锁住那些配置为“use system icon”的item指向的执行文件。我猜想,Aqua Dock打开这些应用程序文件(.exe)以获得其中包含的图标,但是却没有及时关闭被打开的文件句柄,造成其它应用无法删除或者覆盖同一个exe文件。

曾经向不少人推荐Aqua Dock,这里特别提醒一句,如果你在安装后者升级某软件或应用的时候碰到类似问题,不妨关闭正在运行的Aqua Dock再试试。


最新回复
发表评论


















Bold Italic Link