从Process.Start()-方法获取文件

时间:2018-08-06 12:52:23

标签: c# .net process.start

我正在尝试从Process.Start()-方法中检索文件。

给出以下情形:

我从第三方程序获得链接。该链接可以是UNC路径,可以直接链接到PDF / JPG / TIF文件,例如“ www.certainServer.de/test.pdf”,也可以链接到服务器上的程序,这些程序返回特殊的文件类型。 ,例如“ www.certainServer.de/test.aspx”。

我这样打开文件

Process.Start(_path)

如果链接类似于“ www.certainServer.de/test.aspx”,则返回的文件将自动下载到存放的下载文件夹中。

是否有机会检索下载的文件或下载文件的路径?

Process方法返回的Process.Start()对象似乎没有帮助。

1 个答案:

答案 0 :(得分:0)

Process.Start不一定下载文件。它只是开始一个进程。您同样可以轻松启动记事本,它没有任何副作用(当然,除了启动记事本后要使用记事本进行的操作之外)。如果您启动的过程(在您的情况下,称为网页)具有外部影响,则过程引擎对此一无所知。

听起来像您知道文件应该存放的位置,因此您可以使用FileSystemWatcher之类的东西在添加新文件时发出警报(不会一定意味着它来自您的进程),或者在进程运行之前和之后获取文件列表。

但是System.Process并没有固有的知识来确切地知道该过程 did

另一种选择可能是从代码中调用URL(使用WebClient或类似方法)并捕获结果(取决于URL,可能是文件,也可能是网页)。它不像启动一个进程并让默认浏览器来处理下载那样普遍,但是它将更加明确地捕获结果。