Run DOS Commands

Category: Application Features

Date: 02-16-2022

Return to Index


 
'DOS commands are provided by cmd.exe (WinNT, 2000, XP, Vista)
'Use SHELL with "cmd /C" to run DOS commands
 
'you can choose to wait for the DOS command to finish, or continue
'running your app in parallel with the DOS command
 
'Primary Code:
'these first 2 examples wait for the DOS command to finish (Shell Statement)
'#1 - run dir command - create list of files from current folder as file "baslist.txt"
Shell "cmd /C dir *.bas > baslist.txt "
'#2 - run dir command - create list of files from specified folder as file "baslist.txt"
Shell "cmd /C dir c:/myfolder/*.bas > baslist.txt "
 
'the next examples DO NOT wait for the DOS command to finish (Shell Function)
'#3 - run dir command - create list of files from current folder as file "baslist.txt"
Dim iReturn&
iReturn& = Shell ("cmd /C dir *.bas > baslist.txt ")
'#4 - run del command - delete all files of specified type in current folder
Dim iReturn&
iReturn& = Shell ("cmd /C del *.txt")
 
'Environ$("ComSpec") returns the DOS command for the current OS, so if you
'don't know what OS you're dealing with, you can use this:
iReturn& = Shell(Environ$("ComSpec") + " /C DIR *.* > filenames.txt")
 
 
'Compilable Example:  (Jose Includes)
#Compiler PBWin 9, PBWin 10
#Compile EXE
#Dim All
%Unicode=1
Global hDlg as Dword
 
Function PBMain() As Long
   Dialog New Pixels, 0, "Push Test",300,300,200,200, %WS_OverlappedWindow To hDlg
   Control Add Button, hDlg, 100,"Push", 50,10,100,20
   Dialog Show Modal hDlg Call DlgProc
End Function
 
CallBack Function DlgProc() As Long
   If CB.Msg = %WM_Command AND CB.Ctl = 100 AND CB.Ctlmsg = %BN_Clicked Then
      Local iReturn&
      iReturn& = Shell ("cmd /C dir *.* > filenames.txt ")
   End If
End Function
 
'gbs_00055
'Date: 03-10-2012


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm