错误“来源:系统进程已退出,因此请求的信息不可用”

2024-04-02

它在我的电脑上可以工作,但是当我放入另一台机器时,我收到错误“源:系统进程已退出,因此请求的信息不可用”并且 exe 没有出来。有哪位有经验的兄弟可以帮忙吗?赞赏!

        p = New Process
            With p
                .EnableRaisingEvents = True
                .StartInfo.FileName = Application.StartupPath & "\EXE\CDMObjectSelection\CDMObjectSelection.exe"
                .StartInfo.Arguments = strArgs
                .StartInfo.ErrorDialog = True
                .StartInfo.WindowStyle = ProcessWindowStyle.Normal
                .StartInfo.UseShellExecute = True
                .Start()
            End With

            p.WaitForInputIdle()

            While (ginthwnd = IntPtr.Zero)
                System.Threading.Thread.Sleep(100)
                p.Refresh()
                ginthwnd = p.MainWindowHandle
            End While

如果您在调试器中遵循此代码或将其包装在try/catch阻止你可能会发现异常发生在线路上p.WaitForInputIdle(). As :当进程已经退出时抛出此异常。尝试将您的通话封装在try/catch并处理InvalidOperationException.

MSDN 还说“如果进程没有消息循环,WaitForInputIdle 会抛出 InvalidOperationException”。确保您调用的进程有消息循环。

看这个答案 https://stackoverflow.com/a/18479179/28037了解如何正确关闭进程。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误“来源:系统进程已退出,因此请求的信息不可用” 的相关文章

随机推荐