如何使用C#更改默认程序以打开任何Word文档?

时间:2013-08-10 05:14:40

标签: c# wpf

在我的WPF应用程序中,我想在Word 2007或更高版本中打开Word文档,无论打开Word文档的默认程序是否为Word 2007.即使打开Word文档的默认程序是Open Office,我想要在Word 2007 +中打开它们。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

这与WPF没有任何关系。

现在您需要安装Word或将其所在的文件夹添加到Path环境变量。

假设您的文件名变量名为fileName,winword.exe的完整路径存储在wordPath中(或winword.exe位于路径中),您需要执行以下操作 -

ProcessStartInfo startInfo = new ProcessStartInfo
                                         {
                                             CreateNoWindow = false,
                                             Arguments = fileName,
                                             FileName = wordPath
                                         };
Process wordProcess = Process.Start(startInfo);

注1 - 您的fileName直接传递给Word。如果路径包含空格,则必须将其包装在“”中。像

这样的东西
fileName = String.Format("{0}{1}{2}", 
                                fileName.StartsWith("\"") ? "" : "\"", 
                                fileName,
                                fileName.EndsWith("\"") ? "" : "\"");

注2 - Word有其他用于不同目的的命令行参数,其他用途请参见此处http://support.microsoft.com/kb/210565