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;
            }


        }
    }

  • 相关阅读:
    大三上学期周总结
    《代码整洁之道》阅读笔记(三)
    大三上学期周总结
    【测试技能】常用adb命令记录
    【Jmeter】Mac本JMeter实现压力测试实例
    【音视频】IP 地区定位,有坑
    【服务器】mp(edge)内存使用情况扩展
    【python】TypeError: 'Response' object is not subscriptable
    【python】单元测试框架改造接口自动化case
    【git】放弃本地修改,拉取远端最新代码
  • 原文地址:https://www.cnblogs.com/ZeedLee/p/6733294.html
Copyright © 2011-2022 走看看