我正在尝试从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()
对象似乎没有帮助。
答案 0 :(得分:0)
Process.Start
不一定下载文件。它只是开始一个进程。您同样可以轻松启动记事本,它没有任何副作用(当然,除了启动记事本后要使用记事本进行的操作之外)。如果您启动的过程(在您的情况下,称为网页)具有外部影响,则过程引擎对此一无所知。
听起来像您知道文件应该存放的位置,因此您可以使用FileSystemWatcher
之类的东西在添加新文件时发出警报(不会一定意味着它来自您的进程),或者在进程运行之前和之后获取文件列表。
但是System.Process
并没有固有的知识来确切地知道该过程 did 。
另一种选择可能是从代码中调用URL(使用WebClient
或类似方法)并捕获结果(取决于URL,可能是文件,也可能是网页)。它不像启动一个进程并让默认浏览器来处理下载那样普遍,但是它将更加明确地捕获结果。