SHELL (function)
The SHELL function displays the console and returns the INTEGER code value sent when the external program exits.
Syntax
- return_code = SHELL(DOScommand$)
Parameters
- The literal or variable STRING command parameter can be any valid external command or call to another program.
Usage:
- A SHELL to a QB64 EXE program with an exit return code parameter after END or SYSTEM will return that code value.
- The return_code is usually 0 when the external program ends with no errors.
- The console window may appear when using the SHELL function. The _SHELLHIDE function will hide the console from view.
Example: Shelling to another QB64 program will return the exit code when one is set in the program that is run.
'DesktopSize.BAS Compile in Windows with QB64 first CONST SM_CXSCREEN = 0 CONST SM_CYSCREEN = 1 DECLARE LIBRARY FUNCTION GetSystemMetrics& (BYVAL n AS LONG) END DECLARE PRINT trimstr$(GetSystemMetrics(SM_CXSCREEN)); "X"; trimstr$(GetSystemMetrics(SM_CYSCREEN)) s& = _SCREENIMAGE PRINT _WIDTH(s&); "X"; _HEIGHT(s&) END 3 '<<<<<< add a code to return after END or SYSTEM in any program FUNCTION trimstr$ (whatever) trimstr = LTRIM$(RTRIM$(STR$(whatever))) END FUNCTION
- Explanation: To set a program exit code use an INTEGER parameter value after END or SYSTEM in the called program.
- After compiling DesktopSize.EXE run the following code in the QB64 IDE. After 1st program is done 3 will appear on screen:
returncode% = SHELL("DesktopSize") 'replace call with name of any QB64 program EXE PRINT returncode% 'prints code sent by called program after it is closed END
3
See also: