我在我的 64 位 Vista 中安装了 TortoiseHg (Mercurial),当我右键单击文件或文件夹时,上下文菜单没有显示。这个问题有什么解决方法吗?
8 回答
更新:TortoiseHg 0.8(2009-07-01 发布)现在在安装程序中包含 32 位和 64 位 shell 扩展,并且也适用于 Windows 7。不再需要下面描述的解决方法。
在 Windows 资源管理器中获取上下文菜单的解决方法隐藏在 TortoiseHg 开发邮件列表档案中。其中一篇文章提供了有关如何在 64 位 Windows 上运行 32 位资源管理器的非常方便的提示:
如果您运行 32 位 Windows 资源管理器,将显示 TortoiseHG 上下文菜单;使用它创建一个快捷方式(或使用开始>运行):
%Systemroot%\SysWOW64\explorer.exe /separate
(来源: http: //www.mail-archive.com/tortoisehg-develop@lists.sourceforge.net/msg01055.html)
它工作得相当好并且是微创的,但不幸的是,这似乎并没有使图标覆盖出现。我不知道任何解决方法,但至少仍然可以通过 TortoiseHg 菜单命令查看文件状态。所有其他 TortoiseHg 功能似乎完好无损。
图标覆盖现在可以在 32 位资源管理器中使用 TortoiseHg 0.6!不确定这是否是新修复,或者我在 0.5 中是否有一些错误配置;无论如何,这意味着 TortoiseHg在 64 位 Windows 中是完全可用的。
为了能够在 Explorer 中使用扩展,扩展的“位数”需要与操作系统的位数相匹配。这是因为(至少在 Windows 下)您不能将 32 位 DLL 加载到 64 位进程中——反之亦然。如果没有 64 位版本的 HgTortoise,则不能在 64 位 Windows 操作系统上将其与 Explorer 一起使用。
我升级到 Windows 7 RC,64 位解决方法似乎已经停止工作
根据TortoiseHg 常见问题解答,如果您通过创建具有以下设置的快捷方式来启动 32 位资源管理器实例,则上下文菜单将在 64 位 Vista 中工作(如上述答案中所建议):
Target: %windir%\syswow64\explorer.exe /separate
Start In: %windir%\syswow64\
您总是可以安装命令行 hg 并在紧要关头使用它。它也快了一点。
我可以验证 xplorer2 确实在 64 位 Vista 中显示了 HG 乌龟上下文菜单。
如TortoiseHg FAQ中所述,您需要运行 32 位 Windows 资源管理器实例以在 64 位 Vista 下运行上下文菜单和覆盖。
我个人的偏好是为我正在使用 TortoiseHg 的每个项目创建类似于以下的快捷方式:
%windir%\syswow64\explorer.exe /separate /root,C:\projects\frobnicator
这将启动C:\projects\frobnicator
已打开文件夹的资源管理器。/root
(如果您不介意每次启动目标文件夹时都单击进入目标文件夹,则可以省略该选项并为所有项目使用相同的快捷方式。)
我刚刚注意到上下文菜单和图标在某些应用程序的文件打开对话框中工作(在 Vista 上)。我现在只使用 Notepad++ 的文件打开对话框,因为我一直使用 Notepad++。
例如,它似乎必须是简单的打开对话框,而不是记事本的新对话框。
也许有人可以检查这个技巧是否适用于 Windows 7。