'-------------------------------------------------------------------------------- ' This is "DosPrint.inc" ' It allows to print output to Windows console (CMD) '-------------------------------------------------------------------------------- ' In order to work, the produced .exe needs to have its byte #221 changed to ' CHR$(3), in order to enable console mode. See http://mougino.free.fr/code/ '-------------------------------------------------------------------------------- '-------------------------------------------------------------------------------- #INCLUDE ONCE "Win32Api.inc" #INCLUDE ONCE "WinBase.inc" '-------------------------------------------------------------------------------- '-------------------------------------------------------------------------------- FUNCTION DosPrint(BYVAL sText AS STRING) AS LONG STATIC iTxtDone, isConsole AS LONG STATIC hCon AS DWORD IF hCon = 0 THEN hCon = GetStdHandle(BYVAL %STD_OUTPUT_HANDLE) IF hCon = %INVALID_HANDLE_VALUE THEN isConsole = 1 CALL FreeConsole() IF AllocConsole() THEN hCon = GetStdHandle(BYVAL %STD_OUTPUT_HANDLE) END IF IF hCon <> %INVALID_HANDLE_VALUE THEN sText += $CRLF CALL WriteConsole(hCon, BYCOPY sText, LEN(sText), iTxtDone, BYVAL 0) END IF FUNCTION = isConsole END FUNCTION '--------------------------------------------------------------------------------