使用Windows系统上的默认应用程序打开Excel文件

时间:2013-10-08 16:35:33

标签: c# .net windows excel

以编程方式创建Excel文件(*.xlsx)后,我想使用*.xlsx文件的默认系统应用程序打开它。

问题是,

  1. 获取该默认应用程序,无论是Microsoft Office Excel还是可以打开*.xlsx个文件的某些第三方软件。考虑到,通常用户可以设置默认应用程序以在Windows(版本7,8或8.1)中打开特定文件
  2. 现在检查该应用程序是否已在系统上运行,如果是,则使用或打开它的新实例以打开*.xlsx文件。
  3. 此问题也可以推广为使用在Windows系统中为其设置的默认应用程序打开任何文件,并在没有任何应用程序可以在本地系统上打开此文件时向用户发送消息。 / p>

2 个答案:

答案 0 :(得分:3)

使用Process.Start,它将在该文件扩展名的默认应用程序中自动打开。您可以在System.Diagnostics找到它。

ProcessStartInfo startInfo = new ProcessStartInfo("C:\\SomePath\Test.xlsx");
Process.Start(startInfo);

就第二个问题而言,没有办法可靠地做到这一点。如果您确定默认应用程序是Excel,则可以使用Interop库通过COM执行此操作,但是无法判断备用默认应用程序是否支持(或任何其他互操作方式)。

答案 1 :(得分:0)

你不能只使用Process.Start(myFile.xlsx)吗?它基本上只是试图告诉Windows决定如何处理它。

编辑;嘿,几秒钟就挨打了。他的回答更有帮助!