How to Hide the "FoxPro Run Command" Window
ID: Q131621
|
The information in this article applies to:
-
Microsoft FoxPro for Windows, version 2.6a
SUMMARY
By using the FOXTOOLS.FLL library that ships with FoxPro, you can execute
an MS-DOS command or program without seeing the "FoxPro Run Command" window
or another MS-DOS session. This is done by registering and calling the
Windows API WinExec() function as demonstrated in this article.
MORE INFORMATION
The following program creates a sample function that executes an MS-DOS
command or program and keeps the MS-DOS window hidden. The program takes
one parameter, the command to be executed.
To maintain control over the MS-DOS window, the program sends the command
through a PIF file. To keep this window hidden, use the Windows PIF Editor
to make the following changes to the PIF file you use (this example uses
FOXRUN.PIF in the FoxPro directory):
- Select the "Close Window on Exit" check box.
- Set "Display Usage" to "Windowed."
Code Sample
*-------------------- RUN.PRG -----------------------
* Sample program to Execute an MS-DOS command and keep
* the MS-DOS window hidden.
*
* To use this function in FoxPro to create a new directory,
* use one of the following two commands that illustrate two
* ways to call the function and achieve the same result:
*
* =RUN("MD C:\FPW26\TESTDIR")
*
* DO RUN WITH "MD C:\FPW26\TESTDIR"
*
FUNCTION run
PARAMETER doscmd
SET LIBRARY TO SYS(2004)+"foxtools.fll" ADDITIVE
winexec = REGFN("WinExec", "CI", "I")
* To have control over the visibility of the
* MS-DOS command, call it through a PIF file.
* IMPORTANT: (1) Be sure the "Close Window on Exit" check box in
* in the PIF file is selected. (2) Be sure "Windowed" is the
* selected "Display Usage."
cmdstart = SYS(2004)+"FOXRUN.PIF /C "
* Now concatenate the 2 pieces of the command:
fullcmd = cmdstart + doscmd
retval = CALLFN(winexec, fullcmd, 0)
RELEASE LIBRARY SYS(2004)+"foxtools.fll"
Additional query words:
FoxWin
Keywords :
Version :
Platform :
Issue type :