我有两个问题。我的第一个是,我如何“将”某些东西放入默认窗口右键单击弹出菜单?我的意思是,如果我在.exe上用鼠标右键单击,那么默认的东西就会出现(比如剪切,复制,发送,运行......),但是我怎么能在那里添加一行,比如“MyApp” “,这将启动我的申请?我想用c ++完成所有这些。 我的第二个问题是,如何从弹出菜单中获取我已启动MyApp的文件名(或完整路径)?
提前感谢!
kampi
答案 0 :(得分:1)
检查此stackoverflow帖子:Adding item to the Desktop context menu in Windows
此类处理程序必须在HKCR \ Directory \ Background中注册,而不是像HKCR \ Directory,HKCR \ Folder等常用位置。
Check out Creating Shell Extension Handlers in MSDN.
关于CodeProject的一系列文章详细介绍了编写Shell Extensions并且非常好:
答案 1 :(得分:0)
1)听起来您只想改变或添加到Windows资源管理器提供的上下文菜单中。这只是注册表设置的问题。 See here for a good example
2)如果您按照上面链接的zip示例,您将看到目标文件的路径传递给zip应用程序。您的应用程序,如果它接受参数,可以类似地获取正在打开的文件的路径。