- 博客(7)
- 资源 (7)
- 收藏
- 关注
原创 关于C/C++运行库编译出来的程序的运行过程~
今天看了一个软件,逆向了它的流程,里面的算法部分很复杂,跟了几个就跟不下去了,很多需要动态调试才行。根据里面的API已经自己对启动过程的了解,总结了这一类型(带C/C++运行库的)的软件的执行过程~ 1.创建堆 2.获取CPU信息 3.格式化时间 4.分配堆,初始化I/O,其中完成一些必要的句柄的操作 5.获取命令行参数 6.获取环境变量 7.全局变量的构造函数调用 8.main函
2011-12-27 20:46:42 606
原创 根据位图的ID将其显示在桌面~(MFC)
最近圣诞快来了,看到很多小程序比如什么圣诞快乐,然后在桌面显示雪花~~很不错的程序,逆向了两下源码。。不过后面想想算了,里面的实现细节也不复杂,自己动手下~ 关键的两个东西: 第一个对话框窗体的隐藏--直接根据我上一篇转载的方法,在初始化过程中加入 SetWindowPos(&wndTop,0,0,0,0,NULL); 第二个是在桌面显示图片~ 代码如下: void CTryDlg::
2011-12-21 21:28:02 1278
转载 VC基于对话框,文档程序启动时隐藏窗口总结
想让对话框程序隐藏启动,然后需要时又可以显示。 刚开始我也想到在OnInitDialog()中加上ShowWindow(SW_HIDE),其实这样是不行的,不信自己去试验 找了网上的方法,都没有满足我的要求,自己总结了一个比较满意的方法。 定义一个bool b_show;//决定是否隐藏 b_show=false;//默认隐藏 可以在对话框中重载虚函数DefWindowProc()。
2011-12-21 17:57:08 835
转载 stdarg.h中三个宏va_start ,va_arg和va_end
#include #include const int N=5; using namespace std; void Stdarg(int a1,...) { va_list argp; int i; int ary[N]; va_start(argp,a1); ary[0]=a1; for(i=1;i
2011-12-19 16:03:18 667 1
转载 弱符号与强符号
弱符号与强符号 我们经常在编程中碰到一种情况叫符号重复定义。多个目标文件中含有相同名字全局符号的定义,那么这些目标文件链接的时候将会出现符号重复定义的错误。比如我们在目标文件A和目标文件B都定义了一个全局整形变量global,并将它们都初始化,那么链接器将A和B进行链接时会报错: b.o:(.data+0x0): multiple definition of `global
2011-12-12 12:00:17 535
转载 Windbg里查看Shadow SSDT
内核当中已经导出了KeServiceDescriptorTable,可以直接在Windbg当中使用dd命令查看,对于Shadow SSDT的地址,在WinXP当中,地址是KeServiceDescriptorTable-0x40.为了查看win32k的SYSTEM_SERVICE_TABLE,记得要切换到具有图形界面的进程上下文当中才能正确查看.KeServiceDescriptorTableSh
2011-12-06 11:55:09 988
转载 驱动和应用层的三种通信方式
作 者: sislcb 时 间: 2008-01-04,11:57:54 链 接: http://bbs.pediy.com/showthread.php?t=57666 驱动程序和客户应用程序经常需要进行数据交换,但我们知道驱动程序和客户应用程序可能不在同一个地址空间,因此操作系统必须解决两者之间的数据交换。 驱动层和应用层通信,主要是靠DeviceIoControl函数,下面是该函
2011-12-01 21:39:03 1828
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人