打开带关联的文件

Nic*_*ick 5 c# file-extension file associations

我在C#中创建了一个文件编辑器,我可以使用工具栏中的"打开"按钮打开文件,我还将正确的文件类型与程序相关联,因此当我单击扩展名为*.nlp的文件时,程序会正确打开,但不打开文件本身(这是非常合乎逻辑的,因为我还没有实现它)

现在是我的问题,我该如何实现这样的事情?我想要点击它时打开和加载文件.

(顺便说一句,文件只是纯文本,所以没有什么特别的,如果重要的话,它适用于windows)

gid*_*eon 5

在 Windows 中,文件关联在注册表下进行存储和管理 HKEY_CLASSES_ROOT

您可以手动执行以下操作或最终编写一个小安装程序来将正确的条目写入注册表。

您需要注册您的扩展程序,然后将其与本文档描述的程序相关联。另请参阅此文档您的注册表应如下所示:

HKEY_CLASSES_ROOT
   .nlp
      (Default) = YourProgID//can by anything you want
   YourProgID
      shell
         open
            command
               (Default) = yourapp.exe %1
Run Code Online (Sandbox Code Playgroud)

现在,他们回答的关键是%1命令键。它是打开的文件名,它作为参数传递给您的应用程序。

所以 :

static void Main(string[] args)
{
   // args will contain your filename
}
Run Code Online (Sandbox Code Playgroud)