Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how can i disable close button of console window in a visual studio console application?

Tags:

c#

.net

console

I need to disable the close button in the console window of a visual studio console application written in C#. I want that the application should run until it completes and the user should not be able to stop it by closing the console window. I am using visual studio 2010

like image 270
vjain27 Avatar asked May 19 '11 01:05

vjain27


1 Answers

Here is an example to disable close button on console window:

class Program
{
    private const int MF_BYCOMMAND = 0x00000000;
    public const int SC_CLOSE = 0xF060;

    [DllImport("user32.dll")]
    public static extern int DeleteMenu(IntPtr hMenu, int nPosition, int wFlags);

    [DllImport("user32.dll")]
    private static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert);

    [DllImport("kernel32.dll", ExactSpelling = true)]
    private static extern IntPtr GetConsoleWindow();

    static void Main(string[] args)
    {
        DeleteMenu(GetSystemMenu(GetConsoleWindow(), false),SC_CLOSE, MF_BYCOMMAND);
        Console.Read();
    }
}
like image 187
Renatas M. Avatar answered Oct 02 '22 09:10

Renatas M.