zoukankan      html  css  js  c++  java
  • C# 禁用控制台应用程序关闭按钮

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    using System.Runtime.InteropServices;
    namespace ConsoleApplication1
    {   
        class Program   
        {
            [DllImport("user32.dll", EntryPoint = "FindWindow")]
            extern static IntPtr FindWindow(string lpClassName, string lpWindowName);
            [DllImport("user32.dll", EntryPoint = "GetSystemMenu")]
            extern static IntPtr GetSystemMenu(IntPtr hWnd, IntPtr bRevert);
            [DllImport("user32.dll", EntryPoint = "RemoveMenu")]
            extern static IntPtr RemoveMenu(IntPtr hMenu, uint uPosition, uint uFlags);

            /// <summary>
            /// 禁用关闭按钮
            /// </summary>
            static void closebtn()
            {
                IntPtr windowHandle = FindWindow(null, "test");
                IntPtr closeMenu = GetSystemMenu(windowHandle, IntPtr.Zero);
                uint SC_CLOSE = 0xF060;
                RemoveMenu(closeMenu, SC_CLOSE, 0x0);
            }

            static void Main(string[] args)
            {
                Console.Title = "test";
                closebtn();
                Console.CancelKeyPress += new ConsoleCancelEventHandler(CloseConsole);
                Console.WriteLine("Starting...");

                Console.WriteLine("退出请按 Ctrl+C ");
                Console.Read();

        }

            /// <summary>  
            /// 关闭时的事件  
            /// </summary>  
            /// <param name="sender">对象</param>  
            /// <param name="e">参数</param>  
            protected static void CloseConsole(object sender, ConsoleCancelEventArgs e)
            {
                Environment.Exit(0);
                //return;
            }


        }
    }

  • 相关阅读:
    【Linux编程】socket编程
    虚函数相关问题分析
    Android使用ShowcaseView加入半透明操作提示图片的方法
    好的Unix工具的九大启发
    Android ADB工具-截图和录制视频(五)
    (三)ng-app的使用困惑和angularJS框架的自己主动载入
    spark一些入门资料
    jQuery -&gt; 怎样【先创建、再改动、后加入】 DOM元素
    centos平台openstack spice配置
    openstack 启用spice
  • 原文地址:https://www.cnblogs.com/ZeedLee/p/6733294.html
Copyright © 2011-2022 走看看