gpt4 book ai didi

c# - 无法删除从 C# 应用程序启动的子进程中的文件

转载 作者:行者123 更新时间:2023-12-01 05:59:18 24 4
gpt4 key购买 nike

如何在 UseShellExecute 设置为 false 的情况下从 C# 调用子进程并允许删除文件?

子进程是一个java程序,创建一个0字节文件,将其传输到远程服务器,然后删除它。当我从 Windows 命令行执行 java 程序时,此功能起作用。

如果我使用 System.Diagnostics.Process 实例从 C# 调用 java 程序,并将 StartInfo.UseShellExecute 设置为 false,则子进程不会删除该文件。事实上,处理停止并且没有任何反应。如果 Process 对象的 StartInfo.UseShellExecute 属性设置为 true,则子进程可以删除该文件,并且父进程将继续执行。但是,我需要 UseShellExecute 属性为 false,以便我可以重定向子进程的输出。

最佳答案

这听起来可能是原因吗?

http://hackage.haskell.org/trac/ghc/ticket/2650

(或者更具体地说,从那里链接的 Java issue)

我前段时间遇到了类似的问题,结果是由意外的句柄继承引起的,但我不太明白这会如何导致您描述的问题。

关于c# - 无法删除从 C# 应用程序启动的子进程中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1596893/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com