
Win32
claien
这个作者很懒,什么都没留下…
展开
-
Win32 内存管理
<br /> <br /> <br />摘自《C++应用程序性能优化》<br />在Win32平台下,可以通过如下5组函数来使用内存(申请和释放操作等)<br />1. 传统的CRT函数(malloc/free系列),因为这组函数的平台无关性,如果程序会被移植到其它非Windows平台,则这组函数是首选。<br />2. global heap/local heap函数(GlobalAlloc/LocalAlloc系列),这组函数是为了向后兼容而保留的。在Windows 3.1平台下, global hea转载 2010-08-07 14:07:00 · 2007 阅读 · 0 评论 -
14种方法结束进程
<br />原地址不详.<br /> <br />释放驱动HOOK了SSDT表中的NtOpenProcess,但是对参数过滤不严密,只过滤 PROCESS_TERMINATE, PROCESS_WRITE, XXXX(忘记了),,三种.然后比较的PID是放在全局变量中,可以通过发送 DeviceIoControl 改变这个值~<br />所以我们还是可以以其他的参数打开这个进程的(只要不含有那三个参数)~<br />不过大家似乎都不感兴趣这个题目,于是代码就不放了,想要可以直接给我消息.顺便要求刀客公开转载 2010-08-08 13:19:00 · 914 阅读 · 0 评论 -
windows核心编程笔记
<br />1.一般来说不要用CreateThread 创建线程、并用CloseHandle来关闭这个线程,因为这样做会导致内存泄漏,而应该用_beginthread来创建线程,_endthread来销毁线程。<br />因为在C的库中有全局变量。当一个线程已经开始创建了,就会创建一个结构来包含这些全局变量,接着把这些全局变量放入线程的上下文中和这个线程相关起来。这样,全局变量就会依赖于这个线程。<br />这个过程是在_beginThread时做的,而释放在_endTread内完成。<br />所以,当用原创 2010-08-15 16:45:00 · 496 阅读 · 0 评论 -
线程同步
http://www.cnblogs.com/dongzhiquan/archive/2010/03/23/1994635.html事件(event) 事件是用来同步地位不相等的线程的,事件可以用来使一个线程完成一件事情,然后另外的线程完成剩下的事情。事件的使用很灵活,自动事件的激发态是由人工来控制的,而Mutex在释放(releaseMetux)后就一直处于激发态,直到线程Wai转载 2013-07-18 15:46:23 · 587 阅读 · 0 评论 -
PE文件编辑器
// //作者: 神杀中龙 microsoftxiao@163.com //说明: 根据PE文件格式原理书写//1. 在PE信息浏览器基础上改为增加区段工具 2007-5-12 // 参考的书籍来自看雪, 写出的东西也应回到看雪。 取之于雪,用之于雪。#include #include #include #include using namespace std; #转载 2013-09-19 11:33:53 · 1650 阅读 · 0 评论 -
在运行时删除自己进程
下面的代码由Gary Nebbett写就.Gary Nebbett乃是WINDOWS NT/2000 NATIVE API REFERENCE的作者.乃NT系统一等一的高手.下面就分析一些他的这段代码.这段代码在PROCESS没有结束前就将启动PROCESS的EXE文件删除了. int main(int argc, char *argv[]) { HMODULE mod转载 2013-09-24 15:30:19 · 932 阅读 · 0 评论 -
Cache
为什么要引入Cache ①大容量主存一般采用 DRAM,相对SRAM速度慢,而SRAM速度快,但价格高。②程序和数据具有局限性,即在一个较短的时间内,程序或数据往往集中在很小的存储器地址范围内。因此,在主存和CPU之间可设置一个速度很快而容量相对较小的存储器,如下图所示。在其中存放CPU 当前正在使用以及一个较短的时间内将要使用的程序和数据,这样,可大大加快 CPU 访问存储器的速度,转载 2013-11-12 19:25:20 · 1468 阅读 · 0 评论 -
地雷和蜘蛛你选什么?
程序的错误报告,可以收集dump文件,有两个开源项目。CrashRpt : 谷歌的一个项目。图标为地雷。BugTrap:CodeProject的一个项目。图标为蜘蛛。原创 2014-02-07 17:12:20 · 1087 阅读 · 0 评论