Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使Windows上下文菜单调用函数C#_C#_Contextmenu - Fatal编程技术网

使Windows上下文菜单调用函数C#

使Windows上下文菜单调用函数C#,c#,contextmenu,C#,Contextmenu,在程序中,我只想在程序运行时向windows上下文菜单添加一项 因此,它必须在程序运行时添加,在程序退出时删除。另外,我想让它在我的程序中调用一个方法,而不是在单击时运行.exe文件 第二部分可能吗?如果可能的话,你有什么相关信息吗?我最终选择了Ron Beyer建议的路线,制作了一个单独的程序,通过命名管道向主程序发送消息。谢谢你的建议。如果可能的话,我不确定。如果将参数发送到已打开程序(进程)的标准输入,是否为选项?因此,程序将根据接收到的输入调用所需的任何方法。您可以修改/取消修改注册表,

在程序中,我只想在程序运行时向windows上下文菜单添加一项

因此,它必须在程序运行时添加,在程序退出时删除。另外,我想让它在我的程序中调用一个方法,而不是在单击时运行.exe文件


第二部分可能吗?如果可能的话,你有什么相关信息吗?

我最终选择了Ron Beyer建议的路线,制作了一个单独的程序,通过命名管道向主程序发送消息。谢谢你的建议。

如果可能的话,我不确定。如果将参数发送到已打开程序(进程)的标准输入,是否为选项?因此,程序将根据接收到的输入调用所需的任何方法。您可以修改/取消修改注册表,以便在程序运行或退出时包含命令(必须以管理员权限运行),这一部分并不太困难。但是命令需要用参数启动程序,因此您可以让存根可执行文件接受参数并使用某种IPC调用主可执行文件中的方法。我认为您可能必须将其实现为两个独立的部分-一个是您的程序,它公开某种端点,另一个是外壳扩展,除其他外,还有工具。然后,它将根据是否可以访问正在运行的程序的端点来决定是否显示项。不过,shell扩展可能不会用C#编写。