Console::TreatControlCAsInput Property
Assembly: mscorlib (in mscorlib.dll)
| Exception | Condition |
|---|---|
| IOException | Unable to get or set the input mode of the console input buffer. |
If the value of a get operation for the TreatControlCAsInput property is false and CTRL+C is pressed, then the pressed keys are not stored in the input buffer and the operating system terminates the currently executing process.
Caution |
|---|
Use this property judiciously because setting it to true has such a dramatic effect. Most users expect CTRL+C to terminate a console application. If you disable the effect of CTRL+C, the user must remember to use CTRL+BREAK to terminate the application, which is a less familiar key combination. |
The following example demonstrates the TreatControlCAsInput property.
using namespace System; void main() { ConsoleKeyInfo cki; // Prevent example from ending if CTL+C is pressed. Console::TreatControlCAsInput = true; Console::WriteLine("Press any combination of CTL, ALT, and SHIFT, and a console key."); Console::WriteLine("Press the Escape (Esc) key to quit: \n"); do { cki = Console::ReadKey(); Console::Write(" --- You pressed "); if((cki.Modifiers & ConsoleModifiers::Alt) != ConsoleModifiers()) Console::Write("ALT+"); if((cki.Modifiers & ConsoleModifiers::Shift) != ConsoleModifiers()) Console::Write("SHIFT+"); if((cki.Modifiers & ConsoleModifiers::Control) != ConsoleModifiers()) Console::Write("CTL+"); Console::WriteLine(cki.Key.ToString()); } while (cki.Key != ConsoleKey::Escape); } // This example displays output similar to the following: // Press any combination of CTL, ALT, and SHIFT, and a console key. // Press the Escape (Esc) key to quit: // // a --- You pressed A // k --- You pressed ALT+K // ► --- You pressed CTL+P // --- You pressed RightArrow // R --- You pressed SHIFT+R // --- You pressed CTL+I // j --- You pressed ALT+J // O --- You pressed SHIFT+O // § --- You pressed CTL+U }
- UIPermission
for modifying safe top-level windows and subwindows. Associated enumeration: UIPermissionWindow::SafeTopLevelWindows
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Caution