简单的触发黑名单阻断演示 control+c
#include "stdafx.h"
#include <signal.h>
#include <windows.h>
#include <iostream>
using namespace std;
void cs(int n)
{
if(n==SIGINT) {
cout<<"\n你触发了黑名单"<<endl;
signal(SIGINT, cs);
return;
}
if(n==SIGBREAK){
cout<<"\n你按下了ctrl+break,现在退出程序\n";
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;
}
简单的触发黑名单阻断演示 control+c的更多相关文章
- 最简单的视音频播放演示样例8:DirectSound播放PCM
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- 最简单的视音频播放演示样例4:Direct3D播放RGB(通过Texture)
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- 最简单的视音频播放演示样例5:OpenGL播放RGB/YUV
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- JAVA简单Swing图形界面应用演示样例
JAVA简单Swing图形界面应用演示样例 package org.rui.hello; import javax.swing.JFrame; /** * 简单的swing窗体 * @author l ...
- 最简单的视音频播放演示样例3:Direct3D播放YUV,RGB(通过Surface)
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- 最简单的视音频播放演示样例7:SDL2播放RGB/YUV
===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...
- 简单的jQuery hide()方法演示
<!DOCTYPE html><html><head><meta charset="utf-8"> <title>jQu ...
- 简单的策略模式Strategy演示
策略模式,即规则在变化之中,结果终归为一. 公司给员工计算工资,如有加班费,差旅费,每个月的生活补帖等等其它费用需要计算.这个费的规则是不尽相同. 不管策略的规则怎样,终归需要计算出一个结果 工资: ...
- Nginx 简单的负载均衡配置演示样例
近期在做开放查询应用的时候,因为数据两天特别多,两千多万条呢,用户訪问需求也比較大,所以就用nginx做了 负载均衡,以下是改动之后的相关内容. http://www.cnblogs.com/xiao ...
随机推荐
- Email-Ext Plugin install ------ Jenkins Plugins
一.基本信息 1. Email-Ext Plugin功能简介 支持Jenkins邮件发送时,自定义邮件内容功能.详情可以查看jenkins的wiki : https://wiki.jenkins-ci ...
- Exception in thread "main" java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s) for topic_test_1219-2: 30010 ms has passed since batch creatio
代码如下 public static void producer1() throws ExecutionException, InterruptedException { Properties pro ...
- Codeforces Round #372 (Div. 2) A ,B ,C 水,水,公式
A. Crazy Computer time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...
- Linux文件压缩/打包/解压
在Linux日常维护中,经常需要备份同步一些比较重要的文件,而在传输过程中如果文件比较大往往会非常慢,而且还会非常占用空间,这时候就需要我们使用压缩工具对大文件进行压缩打包,下面我们来介绍一下常用的压 ...
- 一个简单客户端获取IP,国家,城市,省份的代码
<html><head> <script src="js/jquery-1.6.2.min.js" type="text/javascri ...
- sql处理数据库锁的存储过程
/*--处理死锁 查看当前进程,或死锁进程,并能自动杀掉死进程 因为是针对死的,所以如果有死锁进程,只能查看死锁进程 当然,你可以通过参数控制,不管有没有死锁,都只查看死锁进程 --邹建 2004.4 ...
- 03-dotnet core创建区域[Areas]及后台搭建
熟悉MVC的人都知道从MVC4开始引入了区域的机制,区域的创建可以协助你在架构较大的项目中,让独立性较高的部分功能作为一个单独的子MVC系统,降低网站与网站之间的耦合度,也可以通过area切割,让多个 ...
- The 2016 ACM-ICPC Asia Dalian Regional Contest
一共a了6题 A:找二分图,判断有没有冲突或者孤立的店 题解:直接dfs即可 #include<map> #include<set> #include<cmath> ...
- LVM MBR分区(装载)
必须有至少一个主分区(P),主分区个数+扩展分区个数<= 4个. 创建完主分区,可以创建扩展分区(E),扩展分区可以有1个,或者没有(扩展分区). 主分区(Primary Partion)可以 ...
- EXCEL对比重复数据
一. EXCEL 突出重复项 1. 选择对应的数据 EXCEL 里选择好数据 2. 选择条件格式 这样就完成了数据重复的突出,可以按条件筛选.选择自己想要的数据