通过注册表传递多个参数

本文关键字:参数 注册表 | 更新日期: 2023-09-27 18:18:45

我有一个程序,我添加到资源管理器的右键菜单。当我在单个文件或单个文件夹上运行此程序时,它运行带有%1参数的程序,如文件和文件夹的reg密钥HKCR'*'shell'program'command'myprogram.exe %1HKCR'folder中所述。这工作得很好,但问题是当我选择多个文件/文件夹时,因为它然后为每个选择执行该程序。我知道这是应该发生的,但我希望能够处理多个选择,如果它是一个,然后遍历参数。有什么办法可以帮我吗?

通过注册表传递多个参数

据我所知,没有办法通过注册表做到这一点。
相反,您必须创建一个shell扩展名。

这里有一个关于shell扩展的很好的教程:
http://www.codeproject.com/KB/cs/dateparser.aspx
这里有一个关于编写处理多个文件的shell扩展的教程:
http://www.codeproject.com/KB/shell/shellextguide2.aspx
我希望两者的结合能帮助你创造整个过程。

经过几天的斗争,我不喜欢这个解决方案,我发现以下作品适合我:

程序"% 1% 2% 3% 4% 5% 6% 7"