如何用c语言在visualstudio中检查文件处理

本文关键字:检查 文件 处理 visualstudio 何用 语言 | 更新日期: 2023-09-27 18:28:04

我正在使用c#在Asp.net中开发pdf创建者。在我的代码中,它创建了一个pdf文件,之后我使用flush、close和dispat streamwriter,在嵌套函数中,我在下一个函数中打开同一个文件,我打开这个文件在浏览器pdf查看器中显示。我的pdf创建方法是线程化的,pdf读取功能是正常模式下的功能。

我的问题是,如何检查这个pdf文件是否在c#代码的另一个过程中使用?因为如果我创建了一个非常小的pdf文件,它会很好,但如果我创建的是一个5-10页的pdf文件,在这种情况下,它会出错。即the process cannot access the file because it is being used by another process

我想使用检查该文件上的进程监视器代码,以及如何显式终止该进程?

如何用c语言在visualstudio中检查文件处理

如果您正在启动创建PDF的进程,只需等待它并检查exitcode,当然,如果创建PDF的过程返回正确的成功或错误退出代码,这里有一些示例代码:

Process proc = Process.Start("createpdf.exe", "params");
proc.WaitForExit();
int result = proc.ExitCode;
/// do something based on result

如果以文件共享的形式打开流没有意义。首先阅读(因为您的PDF正在创建中,还无法查看),那么您还可以只使用try ... catch打开流。

至少这个流行的线程似乎就是这样做的。