簡體   English   中英

C#:防止子進程鎖定呼叫者文件夾

[英]C#: Prevent Child Process to Lock the Caller Folder

我啟動位於文件夾myFolder中的app1.exe。

此app1.exe通過C#中的Process.Start調用另一個app2.exe。

我關閉了app1.exe。

app2.exe嘗試刪除myFolder,但它說它已被鎖定,因為即使app2.exe對myFolder沒做任何事情,app2.exe正在使用它。

注意:如果單獨啟動app2.exe(通過單擊.exe),則可以刪除myFolder。 如果從app1.exe啟動了app2.exe,它只會阻止我。


有沒有辦法允許一個單獨的進程刪除其呼叫者文件夾? app1.exe和app2.exe都在C#中。

啟動app2時檢查涉及的ProcessStartInfoProcess.StartInfo屬性)。 很有可能是app2正在將WorkingDirectory設置為app1所在的文件夾。 如果是這種情況,您可以在啟動app2之前嘗試將WorkingDirectory設置為其他位置,也可以在啟動目錄后讓app2更改目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM