Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/config.php on line 36 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/config.php on line 37 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/lang.php on line 55 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/lang.php on line 55 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/lang.php on line 110 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/lang.php on line 110 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 201 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 201 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 216 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 216 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 231 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 232 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 232 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 233 Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web218/a3/28/510129628/htdocs/border_html5.php on line 233 GLBasic User Manual

GLBasic User Manual

Main sections

SHELLCMD()

ok# = SHELLCMD(cmd$, wait#, show#, rv##)



Executes another program. If you want to execute DOS commands, you have to call CMD or COMMAND (on Win9x/ME) and then enter the DOS command. e.g. "CMD /C dir > files.txt"

wait# specifies whether to wait for completion of the other program (TRUE / FALSE)
show# allows you to start the program hidden (TRUE / FALSE).
ok# returns TRUE or FALSE, depending on whether the program could be started or not.

The return value of the other program will be transferred to rv##

// --------------------------------- //
// Project: SHELLCMD

// Warning: Sophisticated program ahead!

DIM files$[1]

ListFiles(files$[])

FOR i=0 TO BOUNDS(files$[], 0)-1
PRINT "-" + i + ":" + files$[i], 0, i*16+32
NEXT
SHOWSCREEN
MOUSEWAIT



// ------------------------------------------------------------- //
// -=# LISTFILES #=-
// ------------------------------------------------------------- //
FUNCTION ListFiles: names$[]
// Diese Werte werden per Referenz übergeben:
// names$[],
LOCAL tmp$[]
win9x=FALSE
ok = SHELLCMD("CMD /C dir /B /ON /OG > dir.txt", TRUE, FALSE, rv)
IF ok =FALSE
ok = SHELLCMD("COMMAND /C dir /B /ON /OG > dir.txt", TRUE, FALSE, rv)
win9x=TRUE
ENDIF
IF ok=FALSE
PRINT "Strange error - no cmd supplied!?", 0, 0
ELSE
IF win9x
PRINT "Windows 9x based", 0, 0
ELSE
PRINT "Windows NT based", 0, 0
ENDIF
ENDIF

FOR i=0 TO 255
GETFILE "dir.txt", i, data$
IF data$ = "NO_DATA" OR data$ = "NO_FILE" THEN RETURN i
// realloc space for old files + new file
DIM tmp$[i+1]
// copy existing files into temp array
FOR n=0 TO i-1
tmp$[n] = names$[n]
NEXT
// realloc space for original array
DIM names$[i+1]
// copy temp files to array
FOR n=0 TO i-1
names$[n] = tmp$[n]
NEXT
// add new file
names$[i] = data$
NEXT
RETURN i
ENDFUNCTION

See also...