在c#中使用上下文菜单将文件发送到另一个应用程序

本文关键字:文件 应用程序 另一个 菜单 上下文 | 更新日期: 2023-09-27 18:01:48

我目前正在创建一个将持有多个图像的应用程序,我已经决定,在一个图像上,我想在右键单击时出现一个上下文菜单,并有一个选项发送到图像编辑应用程序,如Photoshop, Gimp, Paint等…

我知道如何创建一个上下文菜单,但是我不确定要使用的代码,以便将图像发送到应用程序本身

在c#中使用上下文菜单将文件发送到另一个应用程序

如果您想在默认应用程序中打开文件,那么已经回答了这个问题。如果你想做与浏览器在"编辑"上下文菜单项上做的相同的事情,那么从上面的链接在"原始的,复杂的答案"中添加这两行:

if (psi.Verbs.Contains("Edit", StringComparer.OrdinalIgnoreCase))
    psi.Verb = "edit";

您应该根据MSDN检查psi.Verbs中是否存在您想要的动词。如果没有"edit"动词,那么代码将调用默认应用程序。默认情况下,

如果你想给用户一个用户已经安装的所有图像编辑应用程序的列表,那么你就必须有一个硬编码的数据库,连同它们的安装guid,检查它们是否安装,找出它们安装的位置(可能不是在默认位置),并制作一个列表,用你的文件作为命令行参数调用每个。这个代码太复杂了