Win7下的shell程序与XP有什么不同的地方吗?

mitiao 2011-01-01 03:26:36
我写了一个shell,在系统的右键菜单添加一项,对选中的文件进行操作,和winrar一样。

编译完后,在XP中测试正常,我认为成功了,但是回到win7里,加入的菜单项没有显示,后来发现DllGetClassObject这个函数没有被调用,dll只在regsvr32注册时被加载了一次,注册表的信息在下面

[HKEY_CLASSES_ROOT\CLSID\{C2637600-5816-436E-8F66-6DBFD6A44C41}]
@="app Shell Extension"
[HKEY_CLASSES_ROOT\CLSID\{C2637600-5816-436E-8F66-6DBFD6A44C41}\InProcServer32]
@="app.dll"
"ThreadingModel"="Apartment"

[HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\app]
@="{C2637600-5816-436E-8F66-6DBFD6A44C41}"

请有经验的朋友指点一下,系统是win7 64bit + vc 2010
...全文
66 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
jbleak 2011-12-19
  • 打赏
  • 举报
回复
我在win 7下面测试了,
发现regsvr32注册时需要的函数是DLLRegisterServer

可能是你没有这个 入口吧

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧