Registrations are now open. Join us today!
There is still a lot of work to do on the wiki yet! More information about editing can be found here.
Already have an account?

Microsoft KB Archive/105046

From BetaArchive Wiki
Knowledge Base

HOWTO: How to Quit Windows from Within a FoxPro Application

Article ID: 105046

Article Last Modified on 3/3/2005


  • Microsoft Visual FoxPro 3.0 Standard Edition

This article was previously published under Q105046


You can quit Microsoft Windows from within an application written in FoxPro by using the Windows Application Programming Interface (API) through Foxtools.fll, a library file included with FoxPro.

This code does not work under Windows 95, Windows 98, and Windows NT 4.0 because there is no ExitWindows entry point in User32.exe on Win32 Operating Systems.


NOTE: While it is possible to quit Windows from within a FoxPro program by making use of the Windows API function ExitWindows(), FoxPro will not do a complete cleanup and can leave .TMP files in your TEMP subdirectory.

  1. In a program, open the FOXTOOLS.FLL external library. To do this, use the SET LIBRARY TO command as follows to ensure that the program finds the FOXTOOLS.FLL library in the FoxPro directory: SET LIBRARY TO SYS(2004)+"FOXTOOLS.FLL" ADDITIVE
  2. Register the Windows API functions that you would like to call. In this case, use the ExitWindows() API call: getout=REGFN("ExitWindows","II","I")
  3. To completely quit Microsoft Windows and all applications running under Windows, issue the following command: =CALLFN(getout,0,0)

NOTE: In Windows 95, this procedure displays the Shut Down the Computer dialog box, then exits from Windows.


For more information about ExitWindows(), see the Microsoft Windows Software Development Kit (SDK) "Programmer's Reference, Volume 2: Functions" manual. It contains information about the return values for ExitWindows() and their meanings.

Additional query words: VFoxWin FoxWin 2.50 2.50a 2.50b 2.60 2.60a exit windows

Keywords: kbhowto kbinterop kbprogramming KB105046