C#:防止subprocesslocking来电显示文件夹

我启动位于文件夹myFolder中的app1.exe。

这个app1.exe通过C#中的Process.Start调用另一个app2.exe。

我closures了app1.exe。

app2.exe尝试删除myFolder,但它说它被locking,因为app2.exe正在使用它,即使app2.exe没有对myFolder做任何事情。

注意:如果我单独启动app2.exe(通过单击.exe),我可以删除myFolder。 它只能防止从app1.exe启动app2.exe。


有没有办法让一个单独的进程删除其调用者文件夹? app1.exe和app2.exe都在C#中。

检查启动app2时涉及的ProcessStartInfoProcess.StartInfo属性)。 很可能是app2开始于将WorkingDirectory设置为app1所在的文件夹。 如果是这种情况,您可以尝试在启动app2之前将WorkingDirectory设置到其他位置,或者可以让app2在启动后更改目录。