如何在PC的默认文本编辑软件(而不是默认的关联应用程序)中打开文件?

时间:2019-01-15 15:43:15

标签: c# .net

在C#中工作,我想启动一个过程并在默认的文本编辑程序中打开文件,该程序不一定是该文件类型的默认程序关联。

例如,说我想打开一个html文件。该文件的默认关联可能是firefox。如何在默认的文本编辑器(例如记事本,记事本++等)中打开它?

感谢您的帮助。

编辑:下面的评论说,无法设置默认的文本编辑程序。很好,有没有办法假装该文件是txt文件?

1 个答案:

答案 0 :(得分:4)

它在注册表中:

    string edit = (string)Registry.GetValue(@"HKEY_CLASSES_ROOT\SystemFileAssociations\text\shell\edit\command", null, null);

    edit = edit.Replace("%1", @"c:\temp.txt");

    Process.Start("cmd.exe", "/c " + edit);

这将调用您右键单击->编辑文本文件而不是右键单击->打开

时使用的命令。