自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

liujiayu2的专栏

玩点技术

  • 博客(68)
  • 资源 (33)
  • 收藏
  • 关注

转载 MFC Radio Button 使用 分组 RadioButton 用法

1. 环境:VS20102. 分组将radio1、radio2、radio3分为1组,radio4、radio5分为另一组;方法:设置  radio1  的 属性:  group、tabstop、auto均为true设置  radio2 的 属性: group设为false, tabstop、auto均为true设置  radio3  的 属性:grou

2015-08-30 14:52:26 718

转载 彻彻底底了解回调函数

什么是回调函数?一,回调函数我们经常在C 设计时通过使用回调函数可以使有些应用(如定时器事件回调处理、用回调函数记录某操作进度等)变得非常方便和符合逻辑,那么它的内在机制如何呢,怎么定义呢?它和其它函数(比如钩子函数)有何不同呢?使用回调函数实际上就是在调用某个函数(通常是API函数)时,将自己的一个函数(这个函数为回调函数)的地址作为参数传递给那个函数。而那个函数

2015-08-26 17:39:56 700

转载 1.6 网络编程之 UDP通信

***************************************************  本文由小鸟飞飞整理发表    ** 首发网站:蓝丽网               **  其他网站转载请保留以上信息,谢谢!      ***************************************************   又是出差,一个半月啊,烦死

2015-08-26 17:19:55 597

转载 1.5 MFC封装思想

***************************************************  本文由小鸟飞飞整理发表    ** 首发网站:蓝丽网               **  其他网站转载请保留以上信息,谢谢!      ***************************************************   出差回来,继续加班,找点时

2015-08-26 17:19:20 737

转载 1.4 消息循环和回调函数

***************************************************  本文由小鸟飞飞整理发表    ** 首发网站:蓝丽网               **  其他网站转载请保留以上信息,谢谢!      ***************************************************上 一节的程序可以运行了吧。现在

2015-08-26 17:18:17 1264

转载 1.3 窗口是怎样建成的

***************************************************  本文由小鸟飞飞整理发表 ** 首发网站:蓝丽网               **  其他网站转载请保留以上信息,谢谢!       ***************************************************   现在我们用SDK生成一个

2015-08-26 17:17:48 477

转载 1.2句柄及 WinMain函数

************************************************  本文由小鸟飞飞整理发表  **  首发网站:蓝丽网              **  其他网站转载请保留以上信息,谢谢!     *************************************************关 于句柄  在Windows编程中我们时刻接

2015-08-26 17:17:10 567

转载 1.1 Windows 程序运行原理(消息循环和响应)

**************************************************  本文由小鸟飞飞整理发表   **  首发网站:蓝丽网              **  其他网站转载请保留以上信息,谢谢!     **************************************************Windows 的工作方式:  

2015-08-26 17:16:39 893

转载 SETTIMER的使用问题

SetTimer函数用于创建一个计时器,KillTimer函数用于销毁一个计时器。计时器属于系统资源,使用完应及时销毁。  SetTimer的函数原型如下:UINT_PTR SetTimer( HWND hWnd, UINT_PTR nIDEvent, UINT uElapse, TIMERPROC lpTimerFunc ) ;  其中  hWnd是和timer关联的窗口

2015-08-24 11:11:06 1105

转载 关于windows xp sp2/sp3 中tcpip.sys对于Raw socket的限制

WINDOWS XP SP2修改了TCPIP.SYS,增加了对于RAW SOCKET的发送和伪造源地的限制,详情如下 :1) 不能通过raw socket发送TCP报文。做此尝试时会得到10004号错误。2) 不能通过raw socket发送伪造源IP的UDP报文。3) 不能通过raw socket发送IP碎片。做此尝试时会得到10004号错误。不知微软在哪次对20

2015-08-23 22:13:22 1315

转载 【网络编程】之十三、ping程序实现

使用原始套接字:SOCK_RAW需要ICMP代码如下:[cpp] view plaincopy#include  #include    using namespace std;    #pragma comment(lib, "WS2_32.lib")    typedef struct icmp

2015-08-21 16:47:04 556

转载 【网络编程】之十二、wsaeventselect+线程池 服务器实现

[cpp] view plaincopy#include  #include  using namespace std;      #pragma comment(lib, "WS2_32.lib")    typedef struct _SOCKET_OBJ{      SOCKET s;      HANDLE event; 

2015-08-21 16:41:03 645

转载 【网络编程】之十一、重叠IO Overlapped IO 完成例程

完成例程是Win Sockets提供的另一种管理完成的重叠I/O方法,完成例程是一个函数,当发起重叠操作时,将该函数传递给发起操作的函数,当重叠IO操作完成时由系统调用。下面来看一下例程必须拥有下面的函数原型:[cpp] view plaincopyvoid CALLBACK CompletionROUTINE{         

2015-08-21 16:37:52 592

转载 【网络编程】之十、重叠IO Overlapped IO

winsock2 中引入了重叠I/O(Overlapped I/O)的概念并且要求所有的传输协议提供者都支持这一功能。  他的功能高于前面我们提过的三种,但是最强悍的还是我们后面要说的完成端口。基本原理:让应用程序使用一个重叠的数据结构,一次投递一个活多个winsock I/O请求,针对那些提交的清酒,在他们完成之后,应用程序可为他们提供服务。  应用程序可通过ReadFile和Write

2015-08-21 16:37:20 643

转载 【网络编程】之九、事件选择WSAEventSelect

WSAEventSelect模型是类似于WSAAsyncSelect模型的另一个有用的异步I/O模型。它允许应用程序在一个或者多个套接字上接收以事件为基础的网络事件。 在这里,最主要的差别是在于网络事件会投递到一个事件对象句柄。并不是投递到一个窗口。我们使用事件模型前,我们的应用程序针对使用的每一个套接字首先要创建一个事件对象:[cpp] view plainc

2015-08-21 16:36:28 1432

转载 【网络编程】之八、异步选择WSAAsyncSelect

大家用这个模型,可以让应用程序在一个套接字上接收以windows消息为基础的网络事件通知。我们想要用这个操作,具体的做法就是我们建立一个套接字,然后调用WSAAsyncSelect函数, 也就是说,这个模型的核心就是我们的这个函数;来看一下函数原型:[cpp] view plaincopyint WSAAsyncSelect(  

2015-08-21 16:35:22 538

转载 【网络编程】之七、select聊天室

好久没有用MFC 来写代码了,手都生疏了,悲剧啊,好多API 都去查的  哎~~~好了 下面把 我们聊天室的代码贴出:select函数封装:[cpp] view plaincopyBOOL CserverDlg::Select_Server(SOCKET sock, int nTime /* = 100 */, B

2015-08-21 16:34:53 767

转载 【网络编程】之六、选择select

select模型在五中模型中是最简单,最容易实现的,当然他的效率当然不如其他四种;select可以去监视一个套接字,看哪个socket有消息到来;[cpp] view plaincopyint select(    _In_     int nfds,//忽略    _Inout_  fd_set *readfds,//一个用

2015-08-21 16:34:14 504

转载 【网络编程】之五、异步模型

注:本文部分转载一:select模型二:WSAAsyncSelect模型三:WSAEventSelect模型四:Overlapped I/O 事件通知模型五:Overlapped I/O 完成例程模型六:IOCP模型老陈有一个在外地工作的女儿,不能经常回来,老陈和她通过信件联系。他们的信会被邮递员投递到他们的信箱里。这和Socket模型非常类

2015-08-21 16:33:39 548

转载 【网络编程】之四、socket网络编程例解

前面说了那么多,现在我们给出4个代码+详解,基于win32平台的socket编程。使用TCP  和  UDP  两种协议。OK,先来看一下TCP服务器和客户端:[cpp] view plaincopy/************************************************** 文件名server.

2015-08-21 16:33:13 629

转载 【网络编程】之三、socket网络编程

前面两篇看socket的入门一些知识还有一些常用的API,现在来解释一些概念,还有就是tcp和udp客户端服务器基本模式!阻塞和非阻塞套接字可以处于阻塞模式或者非阻塞模式,调用任何一个阻塞模式的函数都会产生同样的结果。(用或长或短的时间等待操作的完成)   当套接字处于非阻塞模式的时候,API函数的调用会立即返回,但是大多会失败,返回WSAEWOULDBLOCK错误

2015-08-21 16:32:46 548

转载 【网络编程】之二、socket API学习

套接字API函数:1、socket函数:The socket function creates a socket that is bound to a specific transport service provider.2、bind函数:The bind function associates a local address with a socket.(一般用于服

2015-08-21 16:31:58 690

转载 【网络编程】之一、初识WinSocket

Winsock是Windows下的网络编程接口,它是由Unix下的BSD Socket发展而来,是一个与网络协议无关的编程接口。  Winsock在常见的Windows平台上有两个主要的版本,即Winsock1和Winsock2。编写与Winsock1兼容的程序你需要引用头文件WINSOCK.H,如果编写使用Winsock2的程序,则需要引用WINSOCK2.H此外还有一个MSWSOCK.

2015-08-21 16:31:27 2664

转载 数据库脱机和分离的区别

分离和脱机都可以使数据库不能再被使用,但是分离后需要附加才能使用,而脱机后只需联机就可以用了脱机与联机是相对的概念,它表示数据库所处的一种状态,脱机状态时数据库是存在的,只是被关闭了,用户不能访问而已,要想访问可以设为联机状态 分离与附加是相对的两个概念,分离后,数据库不存在,只存在数据库对应的安装地址D:\SQL2008\MSSQL10.MSSQLSERVER\MSSQL\DATA下,要

2015-08-20 13:31:26 21535

转载 长连接和Keepalive

TCP协议中有长连接和短连接之分。短连接在数据包发送完成后就会自己断开,长连接在发包完毕后,会在一定的时间内保持连接,即我们通常所说的Keepalive(存活定时器)功能。默认的Keepalive超时需要7,200,000 milliseconds,即2小时,探测次数为5次。它的功效和用户自己实现的心跳机制是一样的。开启Keepalive功能需要消耗额外的宽带和流量,尽管这微不足道,但在按流量

2015-08-20 12:32:17 1034

转载 基于Windows Socket 的网络通信中的心跳机制原理

引言    在采用TCP 连接的C/S 结构的系统中,当通信的一方正常关闭或退出时,另一方能收到相应的连接断开的通知,然后进行必要的处理;但如果任意一方发生所谓的“非优雅断开”,如:意外崩溃、死机、拔掉网线或路由器故障时,另一方无法得知TCP 连接已经失效,除非继续在此连接上不断地发送数据,经过若干时间后导致错误返回。但在很多时候,更希望服务器端和客户端都能及时有效地检测到网络

2015-08-20 12:07:12 2515

原创 静态函数调用非静态函数的小例子

// tt.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"class A{public: void fun() { printf("1111111111"); } static void fun2() { fun(); }};int _tmain(int argc, _TCHAR* argv[]){ A a; A:

2015-08-19 19:02:16 2118

转载 空结构体和空类

今天看到一片博客说面试被问空结构体大小的问题,发现这个问题以前还真没想过。于是自己试了一把,并在网上找了些资料总结如下:空结构体,先上代码1234567891011#include typedef empty{}a; int

2015-08-19 18:38:43 718

原创 HashKey小测试

FILE *fp = fopen("c:\\HashKey.txt","ab+"); for (int i=0;i<0xffffff;i++) { CString strGuid; strGuid.Format("%d",i); UINT key = HashKey( (LPCTSTR) strGuid); strGuid.Format("%d --key--> %d",i,

2015-08-19 17:22:47 400

转载 LDF文件过大,如何收缩

方法一、   方法二、MSSQL清除日志的命令如何清除sqlserver 日志?设置数据库为简单模式,自动收缩1.打开查询分析器,输入命令backup log databasename with no_log2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一

2015-08-19 15:17:59 19758

转载 AfxInitExtensionModule和AfxTermExtensionModule

一个很好的API查询网站 www.apihome.cnAfxInitExtensionModuleBOOL AFXAPI AfxInitExtensionModule( AFX_EXTENSION_MODULE& state, HMODULE hModule );返回值:如果成功地初始化了扩展DLL,则返回TRUE;否则返回FALSE。参数:stat

2015-08-18 16:35:08 1791

转载 VC++ 创建Windows服务

我在开发的时候用到了DLL里面的函数,开始的时候采用的静态导入的方法,但是发现服务开机启动以后就死掉了,这里不是DLL路径的问题。   没办法,自己只得用动态导入的方法,还好,服务自动开机运行了,还算正常吧。   小提示:如果需要弹出MessageBox消息,比如让服务可以与桌面进行交互。  这个在服务里面可以设置。     当然,我这里的初始化参数已经设置好了,在DOS命

2015-08-17 12:32:17 2361 1

转载 Instsrv.exe可以给系统安装和删除服务

最近一段时间我们公司开发一款新的产品,要在服务器上运行一个服务端程序,为了方便我就希望能将这个程序注册成系统服务开机自动启动而不用每次重启系统都要手动启动程序。经过baidu和google这两位大神的帮助终于找到解决办法,在这里要用到微软提供的两个小工具“instsrv.exe”和“srvany.exe”。Instsrv.exe可以给系统安装和删除服务Srvany.exe可以让程序

2015-08-17 11:09:06 10156

转载 instsrv.exe——来自Windows 2000 Resource Kits的一个小工具

微软官方对该小工具的说明:Installs and uninstalls executable services and assigns names to them.显而易见,这个小工具是用以安装和卸载可执行的服务和指派服务名给这些可执行的服务的。那么怎么去使用呢?这里我们设定要将F:\cpu.exe 以 CPUSrv 的名称显示作为服务的话,我们应当这样子做:先将instsrv.

2015-08-17 10:51:18 627

转载 windows服务创建工具srvany.exe介绍

srvany.exe介绍 srvany.exe是Microsoft Windows Resource Kits工具集的一个实用的小工具,用于将任何EXE程序作为Windows服务运行。也就是说srvany只是其注册程序的服务外壳,这个特性对于我们来说非常实用,我们可以通过它让我们的程序以SYSTEM账户启动,或者实现随机器启动而自启动,也可以隐藏不必要的窗口,比如说控制台窗口等等。 

2015-08-17 10:50:47 1465

转载 利用小工具instsrv和srvany 创建windows服务

本方式特点:代码超级简单,WindowsForm程序即可,并支持程序交互(本人最喜欢的特点),好像不支持win7,支持xp win2003首先介绍2个小工具:instsrv.exe:用以安装和卸载可执行的服务srvany.exe:用于将任何EXE程序作为Windows服务运行 这2个工具都是是Microsoft Windows Resource Kits工具

2015-08-17 10:49:27 1860

转载 检查程序崩溃自动DUMP

#if !defined(_DUMPMODULE_H_FBFFBA7D_971E_48e0_A589_6FD14E8965B6)#define _DUMPMODULE_H_FBFFBA7D_971E_48e0_A589_6FD14E8965B6#if _MSC_VER >= 1000#pragma once#endif // _MSC_VER >= 1000#include #in

2015-08-17 00:28:03 666

转载 编程实现木马的ActiveX启动和注入IE的启动方式

木马的启动方式有很多种,现在比较流行的就是注册为系统服务启动(只适合Windows 2000以上的系统),或者以驱动的方式启动。不过,最近以ActiveX方式启动又比较流行了,因为它适合Windows 9x或2000以上的机器,而且杀毒软件(比如瑞星、江民、金山等)基本不会去监视这种启动方式,比较隐蔽。以ActiveX方式启动的木马国外的比较多,于是就到网上查找相关代码,发现了RECUB。

2015-08-16 19:10:39 1005

原创 注入dll到一个进程里面

下面代码亲测没有问题:// Injector.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include int _tmain(int argc, _TCHAR* argv[]){ //获得被插进程的绝对路径 char IePath[MAX_PATH] = "c:\\1.exe"; char DllFullPath[MAX_PATH]

2015-08-16 01:42:38 737

转载 用 GetEnvironmentVariable 获取常用系统环境变量

以前曾用 GetWindowsDirectory、GetSystemDirectory、GetTempPath 等函数获取系统常用文件夹;也用过 SHGetSpecialFolderLocation、SHGetPathFromIDList 函数获取过更多常用路径;但这都不如用 GetEnvironmentVariable 获取系统变量来得快.//譬如 %WINDIR

2015-08-15 11:24:56 3602

Teleport+Ultra+中文简体破解版

很不错 对网页开发的学习有帮助

2017-08-16

SSDTHook实现进程保护

SSDT 的全称是 System Services Descriptor Table,系统服务描述符表。 这个表就是一个把 Ring3 的 Win32 API 和 Ring0 的内核 API 联系起来。 SSDT 并不仅仅只包含一个庞大的地址索引表,它还包含着一些其它有用的信息,诸如地址索引的基地址、服务函数个数等。 通过修改此表的函数地址可以对常用 Windows 函数及 API 进行 Hook,从而实现对一些关心的系统动作进行过滤、监控的目的。 一些 HIPS、防毒软件、系统监控、注册表监控软件往往会采用此接口来实现自己的监控模块。

2017-06-09

SkinSharp开发库+百款皮肤+皮肤编辑器

SkinSharp又称Skin#,是Windows环境下一款强大的换肤组件。通用换肤库(SkinSharp)能在软件添加换肤功能,支持所有主流的编程语言,比如C++、Delphi、VB6、.net、易语言等等。

2017-05-24

USB 摄像头

USB 摄像头, 亲测可编译可运行。

2017-05-16

minhook-1.3.2

对windows API钩子感兴趣的人都知道有一个优秀的库被微软命名为'Detours'。它真的很有用,但是它的免费版本(Express)是不支持X64。它的收费版本(Professional)支持x64,但是对我来说太昂贵了。微软说它值一万美元。 因此我决定从零开始写我自己的库。但是我没有将Detours的功能完美的复制到我的库中,它仅有API钩子功能,因为这就是我想要的。

2017-05-09

python2.7.8 32

python2.7.8 32位安装包及相关模块安装包,还有32位的PyScripter。 资源包含的文件如下: python-2.7.8.msi matplotlib-1.4.0.win32-py2.7.exe MySQL-python-1.2.4b4.win32-py2.7.exe numpy-1.8.1-win32-superpack-python2.7.exe pyparsing-2.0.2.win32-py2.7.exe python-dateutil-2.2.win32-py2.7.exe six-1.7.3.win32-py2.7.exe PyScripter-v2.5.3-Setup.exe

2016-05-25

detours HOOK API

detours HOOK API 官网网速太慢,谁用谁知道

2015-12-23

C++解析JSON

C++解析JSON

2015-12-02

AStar 算法实例

A星算法 对于空地左键单击后会产生障碍,对障碍左键单击会消除障碍,对于起点,两次左键盘单击会消除起点,如果不存在起点,单击右键会产生起点,如果存在起点不存在终点,单击右键会产生终点,如果既存在起点又存在终点,单击右键会消除终点,点击开始寻路回画出路径

2015-07-18

Visual Assist X补丁

码农们,当你使用VAX助手提示更新的时候,当你安装好新版打开VS提示注册的时候,你是否到处在找patch补丁,每次更新你都蛋碎一样到处寻找,这次我们给大家带来超级通用和谐补丁,每次更新VA_X后均可一如既往的正常使用,免去码农到处寻找补丁、反复打补丁、补丁版本不支持现有IDE的痛苦,翠花上菜!

2015-06-18

CrashFinder2.55

CrashFinder,找到崩溃代码行

2015-05-26

appverifier

AppVerifier,专门用来检测那些用普通方法检测不出的意想不到的bug(比如内存溢出、错误句柄使用等)。而且AppVerifier使用非常简单,

2015-05-22

强制复制软件

强制复制软件

2015-04-22

破解存储过程的加密

破解存储过程的加密

2015-04-22

Python平台

Python平台

2015-04-05

VC西红柿插件破解版

VC西红柿插件破解版

2015-04-05

各种各样的按钮(VC源码)

各种各样的按钮(VC源码)

2014-11-17

瞬间找文件

瞬间找文件

2014-09-05

密码查看器.zip

密码查看器.zip

2014-09-05

VC助手破解版

VC助手

2014-09-05

class-loader测试工程

class-loader测试工程

2023-06-01

mainboard测试工程

mainboard测试工程

2023-05-31

编码测试工程.rar

编码测试工程

2019-11-20

cmake-3.14.3-win64-x64.zip

cmake-3.14.3 最新安装版 CMake是一个开源的跨平台工具系列,旨在构建,测试和打包软件。CMake用于使用简单的平台和独立于编译器的配置文件来控制软件编译过程,并生成可在您选择的编译器环境中使用的本机makefile和工作空间。

2019-09-05

luac逆向工具

luac编译之后的逆向,亲测可用 详细亲看:https://blog.csdn.net/liujiayu2/article/details/81940701

2018-08-22

ffmpeg推送摄像头rtmp流

详细信息请看: https://blog.csdn.net/liujiayu2/article/details/80880815

2018-07-02

IOCP网络模型

详细信息请看: https://blog.csdn.net/liujiayu2/article/details/80772904

2018-06-28

跨平台高性能TCP服务器框架 &boost;

基于boost的asio封装的高性能TCP服务器。asio已经有很好的事件封装机制,只有底层事件,没有针对TCP建立会话机制;也没有多包进行合包,以包为单位的事件提交机制。由于以上多种原因,决定对boost库进行更高的抽象和封装,对开发者提供一种更为便利的使用接口。

2018-06-25

网狐IOCP压缩版

网狐IOCP压缩版,自己整理了两天,3分不算多吧, 遗留问题: 1.由于不太会使用去掉了网络事件(收发数据、网络接受、网络断开)进队列,发的时候直接发送,接收的时候直接回调。不知道原作者都放进队列里 面有哪些确切的好处。 暂时先这样,后续更新。。。

2018-06-22

用C++实现的壳

基础版壳所实现的功能: 1.在原程序中添加一块区段,将壳部分的代码移植进去。 2.在程序启动前优先获得控制权,执行完自己的代码以后再将控制权交还给原程序。 3.对代码段进行简单的亦或加密。 4.对原程序的导入表(IAT)进行修复。 5.如果原程序开启了随机基址,则对源程序进行重定位修复。

2017-09-14

像加载DLL一样加载EXE

像加载DLL一样加载EXE 介绍 你可能已经被警告过,不要用LoadLibrary()加载可执行文件,你可能尝试这么做过,然后程序就崩溃了,所以你可能会认为这是不可能的。 但实际上这是可行的,本文就将介绍具体的方法。

2017-09-10

protobuf-2.61最新版

protocolbuffer 以下简称PB 是google 的一种数据交换的格式 它独立于语言 独立于平台 google 提供了三种语言的实现:java c++ 和 python 每一种实现都包含了相应语言的编译器以及库文件 由于它是一种二进制的格式 比使用 xml 进行数据交换快许多 可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换 作为一种效率和兼容性都很优秀的二进制数据传输格式 可以用于诸如网络传输 配置文件 数据存储等诸多领域 ">protocolbuffer 以下简称PB 是google 的一种数据交换的格式 它独立于语言 独立于平台 google 提供了三种语言的实现:java c++ 和 python 每一种实现都包含了相应语言的编译器以及库文件 由于它是一种二进制的格式 比使用 xml

2017-08-28

Gh0stVC6到VS2010迁移所有问题的解决方法

gh0st 由VC6.0开发的工程项目,移植到VS2010环境下,会出现各种错误和警告,此类错误多数是由编译器和环境不兼容导致,除修改工程下的某些属性参数外,还需手动修改编译过程中出现的一些错误。

2017-08-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除