- 博客(25)
- 资源 (5)
- 收藏
- 关注
转载 基于AFD驱动的进程流量控制
基于AFD驱动的进程流量控制摘要:目前有些软件可以监控进程流量,功能实现的都很多错的。对于进程流量的控制很很多种方案,每一种方案也都有其缺点。比如有应用层基于LSP来做的,也有通过TDI和NDIS中间层来做的。其实现的效果和复杂度也各不相同。而我们要讨论的是一种基于AFD驱动来做的一种进程流量控制方案。关键词:AFD进程流量控制驱动1.总述目前有些软件可以监控进...
2019-03-13 12:06:05
1273
转载 eventpp事件库
eventpp是一个 C++ 事件库,它提供的工具允许应用程序组件通过调度事件并监听它们来相互通信。使用eventpp,您可以非常轻松地实现信号/插槽机制或观察者模式。特性支持同步事件调度和异步事件队列。可配置和可扩展的策略和mixins。通过mixins支持事件过滤器。支持嵌套事件。在处理事件期间,侦听器可以安全地调度事件,追加/预置/插入/删除其他侦听器。线程安全。支持多线程。...
2019-02-21 14:48:39
1471
转载 MYSQL++ 多线程使用
7. Using MySQL++ in a Multithreaded Program Prev Next 7. Using MySQL++ in a Multithreaded ProgramMySQL++ is not “thread safe” in any meaningful sense. MySQL++ contains very little code...
2019-02-19 13:31:34
2624
转载 c++11实现异步定时器
c++11提供了丰富的时间和线程操作函数,比如 std::this_thread::sleep, std::chrono::seconds等。可以利用这些来很方便的实现一个定时器。 定时器要求在固定的时间异步执行一个操作,比如boost库中的boost::asio::deadline_timer,以及MFC中的定时器。这里,利用c++11的thread, mutex, condition...
2019-02-09 18:27:19
3781
1
转载 rapidjson入门操作
此篇文章中对于rapidjson的使用方法基本上来源于rapidjson中文使用手册rapidjson的基本介绍、使用好处、解析速度等不在此篇讲述,因为在官网上已经讲得非常详细了,这里写的都是本人拙劣的见解,如有不足之处,烦请各位指出。本文结构:1、基本单元;2、构建3、增4、删5、查6、改7、输出8、拷贝9、总结1、基本单元rapidjson的基...
2019-01-19 10:41:17
4085
转载 .net反编译的九款神器
1、Reflector Reflector是最为流行的.Net反编译工具。Reflector是由微软员工Lutz Roeder编写的免费程序。Reflector的出现使·NET程序员眼前豁然开朗,因为这个免费工具可以将·NET程序集中的中间语言反编译成C#或者Visual Basic代码。除了能将IL转换为C#或Visual Basic以外,Reflector还能够提供程序集中类...
2019-01-07 10:13:15
9035
25
原创 c++11产生随机数的方法
1.产生10-20之间的随机数 std::default_random_engine generator(time(NULL)); std::uniform_int_distribution<int> distribution(10, 10); int result = distribution(generator);2.产生0.2-0.9之间的随机数 ...
2019-01-03 10:00:51
832
转载 基于C++11的线程池(threadpool),简洁且可以带任意多的参数
咳咳。C++11 加入了线程库,从此告别了标准库不支持并发的历史。然而 c++ 对于多线程的支持还是比较低级,稍微高级一点的用法都需要自己去实现,譬如线程池、信号量等。线程池(thread pool)这个东西,在面试上多次被问到,一般的回答都是:“管理一个任务队列,一个线程队列,然后每次取一个任务分配给一个线程去做,循环往复。” 貌似没有问题吧。但是写起程序来的时候就出问题了。废话不多说,先上...
2018-12-27 08:38:24
410
转载 log4cplus 使用方法
log4cplus 使用方法log4cplus使用配置项Log4cplus使用指南1. Log4cplus简介log4cplus是C++编写的开源的日志系统,前身是java编写的log4j系统,受Apache Software License保护,作者是Tad E. Smith。log4cplus具有线程安全、灵活、以及多粒度控制的特点,通过将日志划分优先级使其可以面向程序调...
2018-12-23 18:14:17
472
原创 可变参数宏
有1-n个固定参数的宏实现,以下两种方式都可以#define Print_ERROR_1(fmt,...) printf("<<-Print-ERROR_1->> "fmt"\n",##__VA_ARGS__)#define Print_ERROR_2(fmt,arg...) printf("<<-Print-ER...
2018-12-23 18:10:08
753
原创 c++标准库数字与字符相互转换
1.字符串转数字使用C++11引入的C++库函数将string转换为数值类型,相应的库函数申明于头文件<string>中。名称 原型 说明stoi int stoi (const string& str, size_t* idx = 0, int base = 10);int stoi (const wstring& str, size_t...
2018-12-19 08:31:05
1347
转载 PCAP数据包过滤器设置 及 过滤表达式语法
通常我们只对特定网络通信感兴趣。比如我们只打算监听Telnet服务(port 23)以捕获用户名和口令信息。获知对FTP(port 21)或DNS(UDP port 53)数据流感兴趣。可以通过pcap_compile()和pcap_setfilter来设置数据流过滤规则(filter)函数原型: int pcap_compile(pcap_t *p, struct bpf_program *...
2018-10-14 19:31:58
8953
原创 windows下配置mysql5.7免安装版
1.配置环境变量,否则你每次都要cd到bin目录下才能使用mysql。右键此电脑(计算机)-属性-高级系统设置-高级-环境变量,在系统变量中的PATH中加入你的bin目录,如:C:\mysql-5.7.12-winx64\bin,点确定!2.以管理员身份运行cmd,并cd到mysql中的bin目录下,执行命令:mysqld --initialize --user=mysql --console...
2018-10-06 10:31:09
178
转载 Mysql++学习(五)------专用SQL结构
专用SQL结构(SSQLS) 特性可以让你很轻易的定义用来匹配SQL表的C++结构.最通俗的理解:对于SQL表中的每一个字段,SSQLS结构都有一个变量与之对应.但是,MySQL++内部也会使用SSQLS的其他方法,操作符来提供简洁的功能.要定义SSQLSes,需要使用定义在ssqls.h中的宏,这也是MySQL++唯一没有自动加入mysql++.h的头文件.sql_create假如你...
2018-09-28 20:16:35
516
转载 Mysql++学习(四)------模板查询
MySQL++提供的另外一个强大的功能就是模板查询,它提供像c语言中printf类似的机制:你提供给MySQL++一个包含固定串和变量占位符的查询字符串,之后可以替换这些占位符的变量.下面例子显示了如何使用这一特性#include <iostream>#include <mysql++.h>#include <errno.h>#include &l...
2018-09-28 20:08:33
327
1
转载 Mysql++学习(三)------举个栗子
下面例子显示了如何建立利用Sql++建立一个连接,执行查询操作,返回一个结果集,并且打印.#include <iostream>#include <mysql++.h>#include <errno.h>#include <stdlib.h>#include <stdio.h>using namespace std;i...
2018-09-28 20:02:38
321
转载 Mysql++学习(二)------Mysql++简述
Mysql++提供了很多种复杂但强有力的数据库使用方法,但本质上和其他的数据库操作API没太大不同基本模式:1.打开一个连接2.格式化执行查询3.如果成功,遍历结果集4.否则,处理错误每一步都对应一个Mysql++类或类集连接对象一个连接对象管理一条到Mysql服务器的连接,你至少需要一个这样的对象来执行其他操作。因为其他Mysql+对象都间接依赖于一个连接实例,所...
2018-09-28 19:59:03
2203
转载 Mysql++学习(一)------mysql编译安装
最近在看数据库开发的东西,因为用C++,所以就看看mysql++咯。mysql提供了c语言的API,还有一些其他语言的connector,虽然以前也写过c语言的mysql连接,增删改查之类的东西,不过都感觉太玩具,最近看新项目,里面的数据库封装就是基于mysql++的,所以顺便学学。mysql++是对于mysql c API的一个封装,为C++开发者提供像操作STL容器一样方便的操作数据库...
2018-09-28 19:55:53
2869
1
转载 VMProtect使用说明
一. 接口说明//开始保护处标记(对应于功能设置:反调试、内存保护等等)VMProtectBegin(const char *);//开始虚拟化代码处标记(包括保护设置)VMProtectBeginVirtualization(const char *);//开始变异代码处标记(包括保护设置)VMProtectBeginMutation(const char *);//开始虚拟...
2018-09-19 10:34:31
988
转载 VS低版本工程打开高版本工程方法
由于VS版本比较多,低版本无法直接打开高版本的工程文件,通过对工程文件进行一些修改可以解决这些问题。通过修改Solution文件和Project文件,可以使低版本转换为高版本。例如将VS2015工程转换为VS2010工程。1.修改解决方案文件使用记事本打开.lsn文件:将Format Version 12.00改为11.00; 将# Visual Studio 14改为2...
2018-08-29 09:13:54
2660
转载 DLL 注入技术的 N 种姿势
DLL 注入技术的 N 种姿势本文中我将介绍DLL注入的相关知识。不算太糟的是,DLL注入技术可以被正常软件用来添加/扩展其他程序,调试或逆向工程的功能性;该技术也常被恶意软件以多种方式利用。这意味着从安全角度来说,了解DLL注入的工作原理是十分必要的。 不久前在为攻击方测试(目的是为了模拟不同类型的攻击行为)开发定制工具的时候,我编写了这个名为“injectAllTheTh...
2018-08-22 11:07:14
1528
原创 c++使用正则表达式提取关键字
string text = "岳云鹏的对象叫铁锤"; regex pattern("(.*)的对象叫(.*)"); smatch results; if (regex_match(text, results, pattern)) { for (auto it = results.begin(); it != results.end();...
2018-08-21 14:58:34
6355
1
转载 mysql日期操作
MySQL 获得当前日期时间 函数获得当前日期+时间(date + time)函数:now() mysql> select now();+---------------------+| now() |+---------------------+| 2008-08-08 22:20:46 |+---------------------+ 获得当前日期+时间...
2018-08-10 08:48:38
1048
原创 SOUI中使用img控件显示jpg图片的方法
1.头文件#include "../../controls.extend/FileHelper.h"#include <GdiPlus.h>#pragma comment(lib,"gdiplus") 2.创建控件SImageWnd* m_pImage_Goods; 3.显示图片 CFileDialogEx openDlg(TRUE, _T("jp...
2018-08-10 08:12:02
1411
TCP聊天程序源码,包含服务端和客户端
2009-04-29
HTTP代理服务器程序
2009-04-19
ICMP高级开发,程序中能够实现ping功能和trace route功能。
2009-04-19
串口通信 高级范例 代码 (MFC)
2009-03-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人