c# – 当用户双击其关联文件时,如何打开应用程序?

前端之家收集整理的这篇文章主要介绍了c# – 当用户双击其关联文件时,如何打开应用程序?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在创建一个使用某种文件格式作为其数据源的应用程序.我希望每当用户双击此文件时打开此应用程序,例如当用户双击Word文档时MS Word将如何打开.我该如何做到这一点?另外,我如何使用用户选择的文件填充数据字段.我会使用program.cs类中的args []吗?我使用c#来编写这个应用程序.

注:我希望在主机上安装应用程序时无需用户执行任何操作即可建立此关联.

解决方法

首先,您需要设置文件关联,以便您的文件类型与您的应用程序相关联,并打开文件类型将运行您的应用程序.

你可以以编程方式进行文件关联,这里有一些细节如上所述:
http://www.codeproject.com/KB/dotnet/System_File_Association.aspx

您也可以通过您的安装项目为您的应用程序执行此操作.对于“新手”来说,这是一条更容易的道路.有关使用visual studio获取安装项目以添加文件关联以及设置文件图标的详细信息,请访问:
http://www.dreamincode.net/forums/topic/58005-file-associations-in-visual-studio/

否则,如果您使用InnoSetup,Wix等,那么我想您可以看到这些安装程序为您创建关联的说明.

第二,您需要让您的应用程序接受命令行参数.打开的文件作为命令行参数传递.您需要处理参数以获取文件路径/名称并打开给定文件.这里有一个很好的描述代码
C# Command Line arguments problem in Release build

在您的情况下,您将调用您的定制参数解析方法,而不是显示处理程序形式的MessageBox.Show(s).
对于只接受文件名作为参数打开的简单应用程序,这可能很简单

foreach (string filePathName in Args)
                DoNamedFileOpen(filePathName);

您的代码也可以有一个方法,可以从文件提取您感兴趣的数据字段的值等.

对于在安装应用程序时设置文件关联,使用图标以及让应用程序处理这些文件的打开问题,这是一个很好的简单方法.

当然,还有很多其他选项,比如运行时文件关联(询问用户是否需要关联),检测“损坏”关联等.

这个问题在这里很长一段时间,但我希望这对新搜索有用

猜你在找的C#相关文章