如何退出VB6应用程序并设置退出代码

问题描述 投票:1回答:2

我有一个VB6应用程序,我需要退出应用程序并设置ExitCode。

谢谢

vb6 exit exit-code
2个回答
0
投票

你不能真的。至少不安全。见PRB: Call to ExitProcess() from Visual Basic Application Hinders Process Exit

已知对ExitProcess()的调用导致问题的一个特定实例涉及COM对象。如果Visual Basic应用程序在调用ExitProcess()时具有对进程外COM对象的未完成引用,则调用进程可能会“挂起”或导致访问冲突。在调用ExitProcess()之前立即直接调用CoUninitialize()通常可以防止出现此问题。虽然此方法允许您解决此问题,但Microsoft不建议或不支持此方法。

从Visual Basic应用程序调用ExitProcess()所产生的唯一优势是能够为进程设置退出代码。但是由于从Visual Basic调用ExitProcess()的不可预测性,最好通过其他方式传递进程的成功或失败,例如将退出代码写入文件或将窗口消息发送到另一个进程。


0
投票

发明一种与调用进程或命令行通信的不同方式可能是最容易的。

但你可以使用来自VB6的Karl Peterson的method of creating a console app吗?然后使用Con.ExitCode = 1(如第二个样本中所示)。

他正在发布一个免费的插件vbAdvance,可以帮助您构建控制台应用程序。

免责声明:改编自我对这个similar question的回答

© www.soinside.com 2019 - 2024. All rights reserved.