Question

I installed TortoiseHg (Mercurial) in my Vista 64-bit and the context menu is not showing up when I right click a file or folder. Is there any workaround for this problem?

Was it helpful?

Solution

Update: TortoiseHg 0.8 (released 2009-07-01) now includes both 32 and 64 bit shell extensions in the installer, and also works with Windows 7. The workaround described below is no longer necessary.


A workaround to getting the context menus in Windows Explorer is buried in the TortoiseHg development mailing list archives. One of the posts provides this very handy tip on how to run 32-bit Explorer on 64-bit Windows:

TortoiseHG context menus will show up if you run 32-bit windows explorer; create a shortcut with this (or use Start > Run):

%Systemroot%\SysWOW64\explorer.exe /separate

(Source: http://www.mail-archive.com/tortoisehg-develop@lists.sourceforge.net/msg01055.html)

It works fairly well and is minimally invasive, but unfortunately this doesn't seem to make the icon overlays appear. I don't know of any workaround for that, but file status can still be viewed through TortoiseHg menu commands at least. All other TortoiseHg functionality seems intact.

The icon overlays are now working with TortoiseHg 0.6 in 32-bit explorer! Not sure if this is a new fix or if I had some misconfiguration in 0.5; regardless this means TortoiseHg is fully functional in 64-bit Windows.

OTHER TIPS

In order to be able to use an extension in Explorer, the "bitness" of the extension needs to match the bitness of the operating system. This is because (at least under Windows) you can't load a 32-bit DLL into a 64-bit process -- or vice versa. If there's no 64-bit version of HgTortoise, then you can't use it with Explorer on a 64-bit Windows OS.

I upgraded to Windows 7 RC and the 64bit workaround seems to have stopped working

You could always install the command line hg and use it in a pinch. It's a bit faster, too.

I can verify that xplorer2 does show the HG tortoise context menu in 64bit Vista.

As detailed in the TortoiseHg FAQ, you need to run a 32-bit Windows Explorer instance for the context menu and overlays to work under 64-bit Vista.

My personal preference is to create a shortcut similar to the following for each project I'm actively using with TortoiseHg:

  %windir%\syswow64\explorer.exe /separate /root,C:\projects\frobnicator

This launches explorer with the C:\projects\frobnicator folder already opened. (You can omit the /root option and just use the same shortcut for all projects if you don't mind clicking your way to the target folder every time you launch it.)

According to the TortoiseHg FAQ the context menus will work in 64-bit Vista if you start a 32-bit instance of explorer by creating a shortcut with the following settings (as suggested in the answer above):

Target: %windir%\syswow64\explorer.exe /separate 
Start In: %windir%\syswow64\ 

I've just noticed that the context menu and icons work from a file open dialog from some apps (on Vista). I now just use Notepad++'s file open dialog, since I use Notepad++ all the time.

It seems to have to be the simple open dialog, not the new one Notepad has, for example.

Maybe someone can check if this trick works in Windows 7.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top