我正在尝试在ASP.NET Web应用程序中使用Process.Start
打开文档。在这种情况下,我打开一个Word文件(.docx)
,但将来会打开任何类型的文件。
我对Process.Start
的理解是,应用程序是根据作为参数传递的文件路径的扩展名确定的,并且已打开。
我使用的代码非常简单:
Process.Start("C:\\test.docx");
该文件存在,并且在运行代码时我没有收到任何异常。但是,Word没有打开。
我在代码运行时通过任务管理器监视我的正在运行的进程,并注意到WINWORD.EXE
进程以正在使用的应用程序池的用户名(DefaultAppPool
)开头情况下。
为什么流程会启动,但没有Word窗口打开?
编辑:如果有更好的解决方案,我的情况就是这样:
我允许用户上传文档,这些文档作为BLOB
保存在Oracle数据库中。然后,用户可以查看他们保存的文档,并打开它们。从BLOB
中提取字节数组并使用正确的应用程序打开它的最佳方法是什么?