SHELL (function): Difference between revisions
Jump to navigation
Jump to search
Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link
No edit summary |
No edit summary |
||
Line 6: | Line 6: | ||
{{ | {{PageParameters}} | ||
* The literal or variable [[STRING]] ''command'' parameter can be any valid external command or call to another program. | * The literal or variable [[STRING]] ''command'' parameter can be any valid external command or call to another program. | ||
Revision as of 02:23, 24 January 2023
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: