HOWTO: Close a Shelled Process When Finished Under Windows

Last reviewed: March 17, 1997
Article ID: Q161303
The information in this article applies to:
  • Microsoft Visual Basic Professional and Enterprise Editions, for Windows, version 5.0

SUMMARY

When the Visual Basic Shell command is used to execute a batch file or MS-DOS program on Windows 95, the MS-DOS window remains open by default when the program is finished executing. Under Windows 3.1, Windows for Workgroups 3.11, and Windows NT 3.51, the MS-DOS window closes by default when the program is finished executing. This article shows how to force Windows 95 to close the MS-DOS window when the program is finished executing.

MORE INFORMATION

To force Windows 95 to close the MS-DOS window, you can use the Visual Basic Shell function with the /C option of COMMAND.COM. The /C option of COMMAND.COM will close the MS-DOS window under Windows 95. The Visual Basic syntax for using the /C option of COMMAND.COM to execute a MS-DOS program is as follows where <pathname> is the path and name of the program to execute and any command line options for it:

      h = Shell("COMMAND.COM /C <pathname>")

Windows 3.1, Windows for Workgroups 3.11, and Windows NT 3.51 will still behave the same way if you use the /C option of COMMAND.COM. So, you can use this technique without having to check which operating system the program is running on.

You may want to specify the location of COMMAND.COM using the Environ function with the parameter "COMSPEC." This will ensure that COMMAND.COM can be found even if it is not on the path. For example:

      h = Shell(Environ("COMSPEC") & " /C <pathname>")


Additional query words: shellexecute winexec createprocess
Keywords : kbusage vb5all vb5howto VBKBProgramming kbhowto
Version : 5.00
Platform : WINDOWS
Issue type : kbhowto


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: March 17, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.