Annotation of mstools/samples/console/alocfree.c, revision 1.1.1.1

1.1       root        1: #include <windows.h>
                      2: #include <stdio.h>
                      3: #include "console.h"
                      4: 
                      5: /*********************************************************************
                      6: * FUNCTION: demoAllocFree(HANDLE hConOld, HANDLE *hConOut)           *
                      7: *                                                                    *
                      8: * PURPOSE: demonstrate FreeConsole & AllocConsole. Free the console  *
                      9: *          and allocate a new one                                    *
                     10: *                                                                    *
                     11: * INPUT: the current console output handle and a temporary 'scratch' *
                     12: *        console handle                                              *
                     13: *********************************************************************/
                     14: 
                     15: void demoAllocFree(HANDLE hConOld, HANDLE *hConOut)
                     16: {
                     17:   BOOL bSuccess;
                     18: 
                     19:   setConTitle(__FILE__);
                     20:   myPuts(hConOld, "Let's free the current console with FreeConsole. It will\n"
                     21:                   "disappear for 3 seconds, then we'll allocate a new one.\n"
                     22:                   "with AllocConsole. Hit return to continue...");
                     23:   myGetchar();
                     24:   bSuccess = FreeConsole();
                     25:   if (!bSuccess)
                     26:     Beep(600, 500);  /* can't output an error message now! */
                     27:   Sleep(3000);
                     28:   bSuccess = AllocConsole();
                     29:   if (!bSuccess)
                     30:     Beep(600, 500);
                     31:   *hConOut = GetStdHandle(STD_OUTPUT_HANDLE);
                     32:   /* set our console text attribute */
                     33:   bSuccess = SetConsoleTextAttribute(*hConOut, FOREGROUND_CYAN);
                     34:   PERR(bSuccess, "SetConsoleTextAttribute");
                     35:   myPuts(*hConOut, "This is a new console that we've allocated with AllocConsole.");
                     36:   Sleep(2000);
                     37:   /* must refresh the screen since we've replaced the console */
                     38:   showConAPIs(*hConOut);
                     39:   return;
                     40: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.