参考博客:C# 控制台程序(命令行程序)设置字体颜色,窗口宽高,光标行数

禁用控制台关闭按钮,参考博客:禁用C#控制台应用程序的关闭按钮

参考博客:c# 控制台程序禁用关闭按钮完美解决

        #region 禁用关闭按钮
        /// <summary>
        /// 禁用关闭按钮
        /// </summary>
        private static void InitDisableClose()
        {
            //与控制台标题名一样的路径
            //string fullPath = System.Environment.CurrentDirectory + "\\" + Process.GetCurrentProcess().ProcessName;
            //根据控制台标题找控制台
            int WINDOW_HANDLER = FindWindow(null, title);
            //找关闭按钮
            IntPtr CLOSE_MENU = GetSystemMenu((IntPtr)WINDOW_HANDLER, IntPtr.Zero);
            int SC_CLOSE = 0xF060;
            //关闭按钮禁用
            RemoveMenu(CLOSE_MENU, SC_CLOSE, 0x0);
        }
        #endregion

控制台输入命令,参考博客:C#入门之控制台输入和输出

        #region 读取控制台命令
        /// <summary>
        /// 读取控制台命令
        /// </summary>
        private static void consoleRead()
        {
            while (true)
            {
                string cmd = Console.ReadLine();
                if (cmd.ToLower() == "exit")
                {
                    System.Environment.Exit();
                    break;
                }
                else if (cmd.ToLower() == "restart")
                {
                    Console.WriteLine("restart");
                }
                Thread.Sleep();
            }
        }
        #endregion

控制台重启

        #region 程序重启
        /// <summary>
        /// 程序重启
        /// </summary>
        public static void Restart()
        {
            Thread reThread = new Thread(new ParameterizedThreadStart(Run));
            object app = System.Environment.CurrentDirectory + "\\" + Process.GetCurrentProcess().ProcessName+".exe";
            reThread.Start(app);
            Thread.CurrentThread.Abort();
        }
        /// <summary>
        /// 运行启动程序
        /// </summary>
        /// <param name="app"></param>
        private static void Run(object app)
        {
            Console.WriteLine("The system will restart!");
            Console.WriteLine("Countdown start...");
            ; i < ; i++)
            {
                Thread.Sleep();//暂停1秒钟
                Console.WriteLine( - i);
            }
            Process ps = new Process();
            ps.StartInfo.FileName = app.ToString();
            ps.Start();
            System.Environment.Exit();
        }
        #endregion

C# Console控制命令的更多相关文章

  1. Linux 视频设备驱动V4L2最常用的控制命令

    http://blog.csdn.net/shaolyh/article/details/6583226 Linux 视频设备驱动V4L2最常用的控制命令使用说明(1.02) 命令 功能 VIDIOC ...

  2. oracle-SQL语言基础-事务控制命令命令

    事务控制命令命令 COMMITROLLBACKSAVEPOINTSET TRANSACTION 当第一条可执行的SQL语句开始执行,数据库事务就开始.随着下面任一事件发生,数据库事务结束:执行COMM ...

  3. Sass控制命令及函数知识整理

    2017-07-07  20:17:17 最底部附结构图(实在是结构图太长了没办法) 2017-06-22  09:11:43 一.Sass的控制命令 1.@if语句 @if 指令是一个 SassSc ...

  4. 在visual studio的工程项目应用中打开console控制窗口

    在visual studio的工程项目应用中打开console控制窗口,这个可以方便我们在console中输出参数的值检查错误. 只需要在需要打开console的地方加入下面的代码即可. AllocC ...

  5. 使用python+Selenium对空调控制器进行循环发送控制命令

    今天一同事说想对空调控制器进行循环发送命令操作.经过了对控制流程的梳理,发现每次选择内机后进入控制页面设定温度都是在26度,想了想,如果要进行循环就得将设定温度重置为17度,然后每循环一次温度增加1度 ...

  6. webRTC中音频相关的netEQ(四):控制命令决策

    上篇(webRTC中音频相关的netEQ(三):存取包和延时计算)讲了语音包的存取以及网络延时和抖动缓冲延时的计算,MCU也收到了DSP模块发来的反馈报告.本文讲MCU模块如何根据网络延时.抖动缓冲延 ...

  7. 自学Linux Shell15.2-作业控制命令(jobs/bg/nice/renice/at/atp/atrm/crontab)

    点击返回 自学Linux命令行与Shell脚本之路 15.1-作业控制命令(jobs/bg/nice/renice/at/atp/atrm/crontab) 1  控制作业 1.1查看作业 (jobs ...

  8. Matlab绘图控制命令

    [转载] 图形的控制与表现 (Figure control and representation) MATLAB提供的用于图形控制的函数和命令: axis:  人工选择坐标轴尺寸.     clf: ...

  9. Oracle数据库存量数据抽取使用spool控制命令

    spool是oracle  sqlplus提供的一个控制命令.可以利用spool和select语句的组合动态生成一些失去了脚本或者一些数据. 1.spool作用: 在sqlplus中用来保存或打印查询 ...

随机推荐

  1. Asp.Net MVC4 + Oracle + EasyUI 学习 第二章

    Asp.Net MVC4 + Oracle + EasyUI 第二章 --使用Ajax提升网站性能 本文链接:http://www.cnblogs.com/likeli/p/4236723.html ...

  2. ios10新特性-UserNotification

    引言:iOS的通知分本地通知和远程通知,iOS10之前采用的是UILocationNotification类,远程通知有苹果服务器进行转发,本地通知和远程通知其回调的处理都是通过AppDelegate ...

  3. MySQL - 问题集 - "Waiting for table metadata lock"(待完善)

    待完善.show processlist; 可参考1:http://blog.csdn.net/huochuangchuang/article/details/49423893 可参考2:http:/ ...

  4. Daily Scrum Meeting ——ZeroDay(Beta)12.08

    算是BETA冲刺的前奏,不算正式冲刺

  5. 【BZOJ2157】旅游 LCT

    模板T,SB的DMoon..其实样例也是中国好样例...一开始不会复制,yangyang:找到“sample input”按住shift,按page down.... #include <ios ...

  6. 【JAVA】Runtime

    1.内存管理:Java提供了无用单元自动收集机制.通过totalMemory()和freeMemory()方法可以知道对象的堆内存有多大,还剩多少.Java 会周期性的回收垃圾对象(未使用的对象),以 ...

  7. Java知识结构

  8. ZeroMQ接口函数之 :zmq_send_const – 从一个socket上发送一个固定内存数据

    ZeroMQ API 目录 :http://www.cnblogs.com/fengbohello/p/4230135.html ——————————————————————————————————— ...

  9. java分享第十二天(接口测试jsoup&cookie)

    一.Cookies到底是什么鬼?简单来说,Cookies就是服务器暂时存放在客户端(你的电脑里)的资料(.txt格式的文本文件),好让服务器用来辨认 你的计算机.当你在浏览网站的时候,Web服务器会先 ...

  10. UI--普通控件总结1--控件使用

    本文目录 0.UIView常用的属性和操作 0_1.UIView常见的属性 0_2.UIView状态 0_3.UIView常用的方法 1.文本框UITextField和文本视图UITextView 1 ...