我在资源管理器中有一个上下文菜单项,现在如何在文件上调用我的进程?

时间:2012-02-13 14:27:16

标签: c# windows registry

我在资源管理器中添加了一个上下文菜单项。我通过注册表修改添加了它。右键单击一个文件,我想在其上调用我的压缩算法。

目前,此压缩功能是C#类库中的一种方法。我有一个基本的Visual Studio 2010解决方案,包含这个类库(1个类,1个资源文件)和一个安装向导项目(非常简单)。目前,当我在此安装向导上运行“install”时,我设法为类库提供了一个DLL,并且我的资源文件在安装时给出的位置被删除。

从我的注册表项中,我可以运行命令。目前我在右键单击的文件上运行notepad.exe。

1。我可以以某种方式注册我的DLL来调用它的函数吗? (我不看任何shell扩展,我觉得有更简单的东西)

2. 否则我不介意使用控制台应用程序等创建.exe。如果我这样做,我会从我的Main(string [] args)的args参数中获取文件路径吗?

3. 在选项2中,我需要在哪里引用我的.exe文件?我没有在环境变量中的任何地方看到Notepad ++,但仍然可以在不指定路径的情况下调用它。

谢谢你们!

1 个答案:

答案 0 :(得分:1)

1。有警告; http://blogs.msdn.com/b/codefx/archive/2010/09/14/writing-windows-shell-extension-with-net-framework-4-c-vb-net-part-1.aspx

2& 3 如果您使用简单的关联可执行文件的方法:

your_file_type\shell\open\command (default) = "c:\yourapp.exe" "%1"

并且您的应用将收到命令行。