码迷,mamicode.com
首页 > 其他好文 > 详细

VB6 让程序结束后带有返回值

时间:2015-09-06 12:41:57      阅读:528      评论:0      收藏:0      [点我收藏+]

标签:

第三方命令行程序运行完之后,批处理中可以随时通过errorlevel变量收取运行结果。而VB写的控制台程序却没有提供这样的功能。关于让控制台程序返回值的教程是本博客独家放出。

返回值,其实也就是进程的结束码。由于VB限定了我们必须以Sub的方式来运行主程序,我们就只能强行中断进程并返回结束码。

这里需要三个API函数:

GetCurrentProcessId:获取当前进程ID
OpenProcess:获取进程句柄及信息
TerminateProcess:终止进程,并指定返回值

这个是封装好的过程,调用这个过程就可以实现返回值:

Public Sub EndWithReturn(ByVal ExitCode As Long)
TerminateProcess OpenProcess(1, False, GetCurrentProcessId), ExitCode
End Sub

在主过程中结束的时候,调用EndWithReturn就可以实现返回值:

Sub Main()
EndWithReturn 123
End Sub

编译后,在批处理中测试:

@echo off
程序名.exe
echo %errorlevel%
pause

VB6 让程序结束后带有返回值

标签:

原文地址:http://www.cnblogs.com/lbnnbs/p/4784913.html

(0)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!