自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (4)
  • 收藏
  • 关注

转载 使用PostThreadMessage在Win32线程间传递消息

PostThreadMessage的原型是这样的BOOL PostThreadMessage( DWORD idThread,    UINT Msg,    WPARAM wParam,    LPARAM lParam);PostThreadMessage可以用于线程之间的异步通讯,因为它不用等待调用者返回,这也许是线程通讯中最简单的一种方法了。但是

2013-12-23 21:59:26 744

转载 基于MFC的插件应用程序设计与实现

基于MFC的插件应用程序设计与实现作者:丰晋军 许铁山      收录:中华论文网(www.zclw.net).............................................................................................................................

2013-12-19 11:15:29 1652

转载 C++ 线程的创建,挂起,唤醒,终止

例子:线程代码:DWORD __stdcall ThreadProc(LPVOID lpParameter) { CMultiThreadDlg * pdlg = (CMultiThreadDlg *)lpParameter; pdlg->m_ProCtrl.SetRange32(0,99999); for (int i = 0; i m_ProCtrl.SetPos(i); } retu

2013-12-19 11:13:03 3771

转载 C++线程暂停

多线程中,线程需要暂停的原因多种多样,基本分为两大类,1是等待数据,2是系统资源紧张,停止计算以把资源让给其他线程.一般初学者会使用的方法就是使用SuspendThread和ResumeThread这两个API或者他们的包装函数进行操作,许多教材上都是这么说的,但这么作会带来及其严重的问题。这两个API的问题是无法确定函数被暂停的位置,这是一个足以让任何多线程程序崩溃的问题。想象一种情况,A线

2013-12-19 11:11:43 8564

转载 控制多线程,开启、暂停、继续、终止(实例)

控制多线程,开启、暂停、继续、终止(实例)  我们这些文盲以前一听到多线程这么几个字,以为非常的高级,难搞!!昨天翻阅了一下MSDN,发现,其实也没那么难,关键在于全面的理解,也许是用多了API了,慢慢的会看懂了一些!!!                                      我总结了几个易于理解的出来,一起共享!      我们先不讲如何使用线程过程中的参

2013-12-19 11:10:11 14483

原创 VC++判断DEBUG状态——函数

BOOL isDebug(){#ifdef _DEBUG return TRUE;#else return FALSE;#endif}

2013-12-08 01:40:54 1167

原创 VC++编程中判断char类型数组的长度

在VC++编程中经常需要判断char类型数组的长度,以下代码可供参考。windows系统下可以使用_mbslen函数C/C++ code?123456789#include #include  int main(void)

2013-12-08 00:06:51 6644

转载 PathFindFileName函数,由文件路径获得文件名

标题: PathFindFileName函数,由文件路径获得文件名作者: Demon链接: http://demon.tw/programming/pathfindfilename.html版权: 本博客的所有文章,都遵守“署名-非商业性使用-相同方式共享 2.5 中国大陆”协议条款。PathFindFileName函数的作用是返回路径中的文件名。 [cpp

2013-12-04 19:54:45 1221

转载 【MSDN】由文件路径获得文件名--PathFindFileName()函数

今天偶然翻看MFC源代码,发现了一个函数PathFindFileName(),这个函数的作用就是用来获取路径中的文件名的。下面是MSDN的文档。LPTSTR PathFindFileName( LPCTSTR pPath ); Searches a path for a file name.Returns a pointer to the address

2013-12-04 19:50:48 4986

转载 DragAcceptFiles 拖放文件到多文档框架上

以多文档为例:1.在应用程序类App的InitInstance()函数后面,添加以下代码:1m_pMainWnd->DragAcceptFiles(TRUE); 2.响应主框架类CMainFrame的WM_DROPFILES消息,添加如下代码:01020304050607

2013-12-04 19:44:19 827

转载 apLib的使用

标 题: 【讨论】apLib的使用作 者: 小驹时 间: 2011-03-25,20:30:05链 接: http://bbs.pediy.com/showthread.php?t=131361看了这个使用apLib的帖子,很有感触http://bbs.pediy.com/showthread.php?t=94815,把几个常用的apLib的函数整理了一下,高手飘过,基础的

2013-12-02 14:21:41 1576

转载 VC DLL远程进程注入

刚刚调好的DLL远程进程注入代码 备份一下void CInjectProcessDlg::OnBtnInject() {// TODO: Add your control notification handler code hereHWND   hWnd;    //保存查找的窗口句柄DWORD dwProcessID;   //保存进程IDHANDLE hProces

2013-12-02 11:02:59 1451

转载 代码注入的三种方法

目录Windows 钩子CreateRemoteThread 和 LoadLibrary 技术――进程间通信CreateRemoteThread 和 WriteProcessMemory 技术――如何用该技术子类化远程控件――何时使用 CreateRemoteThread 和 WriteProcessMemory 技术结束语附录A

2013-12-02 11:01:11 14601

转载 #define用法以及#define和typedef区别

#define用法以及#define和typedef区别1.简单的define定义#define MAXTIME 10002.define的“函数定义”define可以像函数那样接受一些参数,如下#define max(x,y) (x)>(y)?(x):(y);因为这个“函数”没有类型检查,就好像一个函数模板似的,没有模板那么安全就是了。但是这样做的话存在隐患,例子如下

2013-11-29 11:06:12 618

转载 直接运行内存中的程序

【转贴】直接运行内存中的程序     哈哈,想不到有人居然把这种代码也搞出来了。    Windows的PE加载器在启动程序的时候,会将磁盘上的文件加载到内存,然后做很多操作,如函数导入表重定位,变量预处理之类的。这位仁兄等于是自己写了一个PE加载器。直接将内存中的程序启动。记得以前的“红色代码”病毒也有相同的特性。    直接启动内存中的程序相当于加了一个壳,可以把程序加密保存,

2013-11-28 13:17:20 1071

转载 WaitForMultipleObject与MsgWaitForMultipleObjects用法

用户模式的线程同步机制效率高,如果需要考虑线程同步问题,应该首先考虑用户模式的线程同步方法。 但是,用户模式的线程同步有限制,对于多个进程之间的线程同步,用户模式的线程同步方法无能为力。这时,只能考虑使用内核模式。用户模式与内核模式线程同步机制比较: 用户模式内核模式优点线程同步机制速度快 支持多个进程之间的线程同步,防止

2013-11-27 11:26:01 1053

转载 结构体中数组下标为0

这是个广泛使用的常见技巧,常用来构成缓冲区。比起指针,用空数组有这样的优势:  1.不需要初始化,数组名直接就是所在的偏移  2.不占任何空间,指针需要占用int长度空间,空数组不占任何空间。   “这个数组不占用任何内存”,意味着这样的结构节省空间;“该数组的内存地址就和他后面的元素的地址相同”,意味着无需初始化,数组名就是后面元素的地址,直接就能当做指针使用。   这样

2013-11-27 11:23:56 3550

转载 Windows消息调度机制和线程同步控制

windows的所谓事件驱动核心是消息!    消息分为进队消息消息和非进队消息。所谓进队消息就是windows将消息发送到每个线程所专有的队列中,然后由程序自主处理,这种消息基本上是由用户输入产生(wm_keydown,wm_keyup,wm_char,wm_mouse**,以及wm_paint,wm_timer,wm_quit)或者是调用postmessage,postthreadme

2013-11-21 11:30:13 1180

转载 #define总结 (网上资料汇集)

1. 定义简单的常数:定义常量,便于修改(切不可在后面加上分号!) #define N 1000 等效于 const int N = 1000; 但略有不同,define只是简单替换,而不是作为一个量来使用.2. 定义简单的函数:注意多使用括号define可以像函数那样接受一些参数,如下:#define max(x,y) (x)>(y)?(x):(y

2013-11-20 11:32:08 720

转载 安全测试工具

应用安全web安全AppScan      Burp Suite      ComeAssistant      DirBuster      DWRDigger      Fidder      HttpPutScaner      Mantra     WebScarab      WSDigger反编译Cavaj Java Decomp

2013-11-20 11:30:53 1129

转载 我对CONTAINING_RECORD宏的详细解释

宏CONTAINING_RECORD的用处其实还是相当大的, 而且很是方便, 它的主要作用是:    根据结构体中的某成员的指针来推算出该结构体的指针!  下面从一个简单的例子开始说起:  我们定义一个结构体, 同时类型化:typedef struct{ int a; int b; int c;}ss;  这是一个很简单的结构体, 没什么特

2013-11-20 11:28:40 691

代码注入的三种方法

将代码注入不同的进程地址空间,然后在该进程的上下文中执行注入的代码。本文将介绍三种方法: 1、Windows 钩子 2、CreateRemoteThread 和 LoadLibrary 技术 ——进程间通信 3、CreateRemoteThread 和WriteProcessMemory 技术 ——如何用该技术子类化远程控件 ——何时使用该技术

2013-12-02

SuperScan好吧凑字

SuperScan 通过扫描80端口发现存活主机。 功能强大的端口扫描工具。 1)通过Ping来检验IP是否在线; 2)IP和域名相互转换; 3)检验目标计算机提供的服务类别; 4)检验一定范围目标计算机的是否在线和端口。

2013-08-24

IExif_2.3_en

IExif_2.3_en 照片 资源 查看 可以看到所有照片、图片的拍摄地点等信息

2012-09-19

ASEF-Blog_ASEF-Blog(4).pdf

Introducing A S E F - Android Security Evaluation Framework An idea making a journey through different paths of Android Security to reach a destination that may only be pursued with the help of a community.

2012-09-19

空空如也

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

TA关注的人

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