I created a dll file built (Project:win32 app, ATL and COM object using Visual studio 2008) in 32 bit. In win 7 32 bit OS, After registering my dll i'm getting "ABC" option in context menu(on right click). Now i move to win 7 64 bit OS. Dll loaded successfully, but i'm not getting "ABC" option on right click(in context menu). Can anyone please point me where开发者_运维知识库 i went wrong or any suggestions ?
Note: Right click on Folder gives "ABC" option.
A shell extension compiled for 32bit will run only in a 32bit process. The Windows Explorer of a 64bit Windows is a 64bit process, so it requires a 64bit shell extension.
If a 32bit application would use the fileopen dialog (on a 64bit Windows), the dialog would require a 32bit shell extension. So it's recommended that you install your extension like that:
- Win32: 32bit Shell Extension
- Win64: 64bit and 32bit Shell Extension
To do this, you have to give different GUIDS to the 32bit / 64bit shell extension. Hope that makes it a bit more clear.
Edit: As Raymond suggested, it seems that you can use the same GUID for both extensions.
精彩评论