我的上下文菜单处理程序在x64窗口中不起作用 [英] My context menu handler won't work in x64 windows

查看:36
本文介绍了我的上下文菜单处理程序在x64窗口中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有上下文菜单处理程序的MFC应用程序,该菜单程序在所有32位win上都可以正常工作.
我已经在(XP,Vista,7,Server 2000/2007 ...)上进行过尝试.

然后我安装了64位7,现在无法再抬起它的头了.
在所有64位Windows版本上都是相同的.

首先,我将其重新编译为64位.
我已经尝试了多个版本的Visual Studio(当前为2010).
我已经确定了shell ext的注册表项.在正确的部分中(不在WOW6432Node中).
我曾多次搜寻互联网以寻求帮助.
我试着将其与消息框混为一谈,以查看它是否至少被Windows调用.

它只是不会触发64位,而且我没主意.

任何帮助/建议将不胜感激.

/Urban Dahlberg

I have an MFC application with an context menu handler which works fine on all 32 bit win.
I have tried it on (XP, Vista,7, Server 2000/2007...).

Then I installed 64 bit 7 and now I can''t get it to rear it''s head anymore.
It''s the same on all 64 bit windows versions.

First I recompiled it for 64 bit.
I''ve tried several versions of Visual Studio (currently 2010).
I''ve made sure the registry entries for the shell ext. are in the correct part (not under WOW6432Node).
I''ve scoured the internet several times to find help.
I''ve tried to riddle it with messageboxes to see if it''s at least called by windows.

It just won''t trigger in 64 bit and I''m out of ideas.

Any help/suggestions would be much appreciated.

/Urban Dahlberg

推荐答案

您将其注册为管理员吗?使用以管理员身份运行"吗?

还有这个:
创建快捷菜单处理程序 [
Did you register it as administator? Using "Run as Administrator" ?

There is also this:
Creating Shortcut Menu Handlers[^]

Regards
Espen Harlinn


感谢jk Chan愿意提供我的代码.
找到答案后,我正在向您发送示例项目! :-D
我的上下文菜单处理程序是VS Soulution中很多项目中的一个,当我将该项目分解为自己的解决方案并进行编译时,突然出现了以前从未见过的compiler错误.
碰巧的是,很久以前,我试图将MFC类添加到上下文菜单处理程序中以更轻松地访问注册表.那没有用,所以我删除了文件,但忘了删除"#include ...".
这个#include坐在那里已经好几年了,直到我尝试在64位Windows中使用dll时,再也不会造成任何麻烦.
我删除了include,将dll编译为64位,替换了旧的dll,然后上下文菜单处理程序立即开始工作.

如果不是陈先生,那我就找不到了,所以谢谢您:)

最好的问候,
Urban Dahlberg
Thank you jk Chan for offering to check my code.
I was working on sending you a sample project when I found the answer! :-D
My context menu handler is one project of many in an VS Soulution, and when I broke out that project, put it in it''s own solution and compiled it I suddenly got a comliper error I''ve never seen before.
As it happens, a long time ago, I tried to add an MFC class to my context menu handler to access the registry easier. That didn''t work so i removed the files but forgot to remove the "#include ...".
That #include been sitting there for years, never causing any trouble until I tried to use my dll in a 64 bit windows.
I removed the include, compiled the dll for 64 bit, replaced the old one and the context menu handler started working at once.

If it hadn''t been for Mr Chan I wouldn''t have found it, so thank you :)

Best Regards,
Urban Dahlberg


这篇关于我的上下文菜单处理程序在x64窗口中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆