zoukankan      html  css  js  c++  java
  • 简单的触发黑名单阻断演示 control+c

    #include "stdafx.h"
    #include <signal.h>
    #include <windows.h>
    #include <iostream>

    using namespace std;

    void cs(int n)
    {
      if(n==SIGINT) {
        cout<<" 你触发了黑名单"<<endl;
        signal(SIGINT, cs);
        return;
      }
      if(n==SIGBREAK){
        cout<<" 你按下了ctrl+break,现在退出程序 ";
        exit(0);
      }
    }


    int main()
    {
      char ch[30];
      char* str[3];
      bool flag=false;
      signal(SIGINT, cs); /*注册ctrl+c信号捕获函数*/
      signal(SIGBREAK,cs); /*注册ctrl+break信号捕获函数*/

    //黑名单命令
      str[0]="cd";
      str[1]="ls";
      str[2]="dir";
      

      while(1)

        if(flag!=true){

          cin>>ch;

          for(int i=0;i<sizeof(str)/sizeof(str[0]);i++){
            if(strcmp(ch,str[i])==0){

               //组合按键
               keybd_event(VK_CONTROL,0,0,0);   //按下control键
               keybd_event(67,0,0,0);                  //按下C键
               keybd_event(VK_CONTROL,0,KEYEVENTF_KEYUP,0);
               keybd_event(67,0,KEYEVENTF_KEYUP,0);
              flag=true;
            }
          }
        }
      }

    return 0;
    }

  • 相关阅读:
    实验10 指针2。
    作业5 指针应用1。
    实验9 指针1。
    作业4 函数应用。
    实验8 数组2。
    实验7 综合练习。
    实验6 数组1。
    实验5 函数。
    作业3 应用分支与循环结构解决问题。
    作业2 分支、循环结构。
  • 原文地址:https://www.cnblogs.com/duyy/p/3662326.html
Copyright © 2011-2022 走看看