Context menus in x64 OS

Here you can propose new features, make suggestions etc.

Moderators: sheep, Hacker, Stefan2, white

Post Reply
lanx
Junior Member
Junior Member
Posts: 6
Joined: 2007-04-18, 16:54 UTC

Context menus in x64 OS

Post by *lanx »

Hi there,

I tried to search for a similar thread but didn't find anything, so here I am...

I've just installed Vista x64 after using XP x64 in the past year.
Running Total Commander in both OSes I found a little issue with right-click context menus: only 32bit applications functions are shown.

In example, if I do a right-click over a .7z file having the x64 version of 7-zip installed, I'm unable to access compressor context menu under Total Commander... but it's shown under Windows Explorer.

Do you plan for a fix before final 7 version release?

Thank you in advance for your kind attention.
gigaman
Member
Member
Posts: 129
Joined: 2003-02-14, 11:28 UTC

Post by *gigaman »

Well, it's not really a "little issue".
32bit shell extensions are shown in 32bit applications (such as Total Commander, or 32bit version of Windows Explorer - you can try that), 64bit shell extensions are shown in 64bit applications (such as 64bit version of Windows Explorer). The "mixed mode" (either way) doesn't work.

I think it could be solved in TC somehow (using 64bit helpers?), but it probably wouldn't be exactly easy.
User avatar
tridy
Junior Member
Junior Member
Posts: 90
Joined: 2003-11-27, 07:51 UTC
Location: Еurоpе

32 bit and 64 bit extension in context menu in Vista 64 bit

Post by *tridy »

from http://www.ghisler.ch/board/viewtopic.php?t=16095
ghisler(Author) wrote:Total Commander does not create the context menu by itself. You can check with a test tool how it is created:
http://ghisler.fileburst.com/addons/samplerightclick.zip

Maybe you started Total Commander with full admin rights?
I have the same problem on Vista Business 64 bit. I am running Total Commander from U3 USB stick.

Here are my thoughts:

In Vista, I have installed 7-Zip 64 bit and it shows the context menu in Explorer but it doesn't show it in Total Commander (Image: http://i1.tinypic.com/5zeltep.jpg).

Code: Select all

So, [i]Explorer[/i] has the following extensions:

  - 7 Zip (x64)
  - UltraISO (x86)
  - Avast Antivirus (x64)

[i]Total Commander[/i] has the following extensions:

  - Avast Antivirus (x64)
  
Alright, we skip the IrfanView, since it is just an addition to the registry and not the shell extension.

At the same time Avast, I think is adding a 64 bit shell extension that appears on both Explorer and Total Commander. If Avast and 7-Zip are both 64 bit extensions then both of them should appear on the Total Commander context menu as well. Or is Avast actually a 32 bit extension after all but then UltraISO should appear there as well, since it is 32 bit extension.

With the quote from Christian, it looks like Total Commander uses Explorer menu and just adds some additional items. But then why not all the items are displayed in Total Commander context menu?

Any thoughts?

PS How can I actually see if the extension is 32 bit or 64 bit? Is there any utility out there?
[tridy]
License #: 79539
gigaman
Member
Member
Posts: 129
Joined: 2003-02-14, 11:28 UTC

Re: 32 bit and 64 bit extension in context menu in Vista 64

Post by *gigaman »

tridy wrote:In Vista, I have installed 7-Zip 64 bit and it shows the context menu in Explorer but it doesn't show it in Total Commander
Btw, you should distinguish between 32bit and 64bit Explorer (you have both in x64 Windows). You are talking about 64bit Explorer here; 32bit Explorer should behave the same as Total Commander.
tridy wrote:At the same time Avast, I think is adding a 64 bit shell extension that appears on both Explorer and Total Commander. If Avast and 7-Zip are both 64 bit extensions then both of them should appear on the Total Commander context menu as well. Or is Avast actually a 32 bit extension after all but then UltraISO should appear there as well, since it is 32 bit extension.
Avast does the only possible thing that works everywhere - it adds two shell extensions: one 64 bit, the other 32 bit (both of them doing basically the same, of course).
User avatar
tridy
Junior Member
Junior Member
Posts: 90
Joined: 2003-11-27, 07:51 UTC
Location: Еurоpе

Post by *tridy »

Could you tell more about the 2 exploreres?
I think I am always running 64 bit since it is show in the task manager as 64 bit. But what would be the purpose of running 32 bit Explorer? Can I show the 32 bit explorer context menu from 64 bit Explorer?

Ok, now it pretty much explains why avast is shown in the context menu. So, what you are saying that all the programs are adding the context menu to the 64 bit explorer and Total Commander is showing 32 bit explorer context menu? Or is it vise versa?
[tridy]
License #: 79539
gigaman
Member
Member
Posts: 129
Joined: 2003-02-14, 11:28 UTC

Post by *gigaman »

tridy wrote:Could you tell more about the 2 exploreres?
The whole "system32" folder is doubled in x64 Windows - everything inside of the system folder (such as Explorer, Notepad, Calculator, ...) is present twice, once in 64bit version (true system32 folder), and also in 32bit version (SysWow64 folder).
Actually, if I remember correctly, Explorer.exe is there 3 times - another one (64bit) is in Windows folder directly.
tridy wrote:I think I am always running 64 bit since it is show in the task manager as 64 bit. But what would be the purpose of running 32 bit Explorer?
Reason for running? Well, compatibility with other extensions (that don't support 64bit) - if you have any such tool installed.
Reason for the presence... compatibility reasons again, probably. I suppose there are quite a few 32bit applications that somehow (ab?)use various system tools for their own purposes, and Microsoft didn't want to break the compatibility if they turned them into 64bit versions and left the 32bit versions out.
tridy wrote:Can I show the 32 bit explorer context menu from 64 bit Explorer?
I don't think so. 64 bit DLLs cannot be loaded into 32bit processes and 32bit DLLs cannot be loaded into 64bit processes - so these two "sides" are separated.
tridy wrote:So, what you are saying that all the programs are adding the context menu to the 64 bit explorer and Total Commander is showing 32 bit explorer context menu? Or is it vise versa?
32bit programs, unaware of 64bit Windows, certainly add their shell extensions into "32bit explorer".
As for 32 bit programs aware of 64bit Windows, or 64bit programs... it depends on their developers what kind of shell extension they install.
User avatar
tridy
Junior Member
Junior Member
Posts: 90
Joined: 2003-11-27, 07:51 UTC
Location: Еurоpе

Post by *tridy »

So, as far as I understand, if you are running a 32 bit application (like Total Commander) and trying to call/access files' context menu, it will give you the 32 bit context menu. And for Total Commander it is impossible to call 64 bit context menu. Is this right?
[tridy]
License #: 79539
gigaman
Member
Member
Posts: 129
Joined: 2003-02-14, 11:28 UTC

Post by *gigaman »

No, I'm not saying it's impossible; TC could probably use some kind of helper (64bit) executable that would provide it with access to 64bit shell extensions. However,
- it would require some effort
- it's not clear what you'd really like to see. If it always showed 64bit extensions only, you wouldn't see the 32bit ones... (so old tools would be missing); if it tried to merge both 32bit and 64bit items, duplicate items might occur for programs that use both (like avast).
User avatar
Flint
Power Member
Power Member
Posts: 3316
Joined: 2003-10-27, 09:25 UTC
Location: Moscow, Russia
Contact:

Post by *Flint »

...
- it may work with wrong files. E.g., you are browsing system32 directory from TC (and see the contents of SysWOW64). Then you call some 64-bit shell extension on some of the files, and this extension works with the same-named files from the real system32.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 9.51 / Win7 x64 SP1, Win10 x64
Post Reply