c#Windows'打开>'上下文菜单行为[重复
-
05-10-2019 - |
题
可能的重复:
FILETYPE与应用程序(C#)
我正在编写一个C#Windows应用程序以可视化和修改.build'文件(NANT脚本)。我希望用户能够右键单击Windows Explorer中的.build文件,然后选择“ with>'>”选项以允许在我的应用中修改文件。
我的计划需要什么来支持该机制?我的程序可能需要做什么才能启用上下文菜单支持?
我想知道是否有人可以将我指向有关此主题的好文章/教程的方向。
解决方案
带有命令的打开只是将文件的路径作为第一个参数传递到应用程序,所以您需要做的就是
public static void Main(string[] args)
{
if(args[0] != null)
{
//args[0] contans a path to the file do whatever you need to do to display it
}
else
{
//Start normally
}
}
要自动将您的程序公开放置在列表中,您需要添加一些reg键 HKEY_CLASSES_ROOT\YOUR_EXT\
. 这是一个这样的答案 说怎么做
或者,您可以手工将其添加到正常方式中。
其他提示
看这篇博客文章: 外壳扩展 - 上下文菜单. 。它在Windows Shell上下文菜单上具有一些简单的“包装器”代码。将其放入GAC中,当您右键单击时,您的菜单将作为右键单击上下文菜单的子菜单包含在内。
至于严格使用“与...打开”以使您的应用程序仅用于打开的文件,这要容易一些。这些是由Windows使用注册表在注册表中的两个位置管理的:
- hkey_current_user software Microsoft Windows currentversion explorer fileexts .fileextension .fileextension openwithlist(当前用户的安装)
- hkey_classes_root .fileextension openwithlist(所有用户安装)
使用Regedit查看一些现有的,然后使用注册表类创建想要的扩展名的新密钥。
不隶属于 StackOverflow