
程序类
文章平均质量分 75
Yeah
软件专业。。。
展开
-
一段不错的DLL自删除代码
#include #include HMODULE hDll;extern "C" __declspec(dllexport) void DeleteMe(){ //在这里干其它想干的事,如删除其它exe文件 //下面代码实现DLL自删除 TCHAR* szDll = (TCHAR*)VirtualAlloc(NULL, MAX_PATH, MEM_COMMIT, PAGE转载 2009-04-26 17:32:00 · 1006 阅读 · 0 评论 -
windows下获取MAC地址的三种方法
1、发送ARP包获取MAC地址:#include #include #include "Iphlpapi.h"#pragma comment(lib, "IpHlpApi.lib")#pragma comment(lib, "ws2_32.lib")int ma转载 2011-09-21 16:23:35 · 8041 阅读 · 0 评论 -
高强度花指令--SEH
反调试感觉作用很大,但是很难懂..所以教程都没有说...FS寄存器指向当前活动线程的TEB结构(线程结构)偏移 说明000 指向SEH链指针004 线程堆栈顶部008 线程堆栈底部00C SubSystemTib010 FiberData014转载 2011-07-05 23:13:15 · 1330 阅读 · 0 评论 -
Kernel32.dll基地址
PUSH ESI;XOR ECX,ECX;MOV ESI,DWORD PTR FS:[ECX+30];MOV ESI,DWORD PTR [ESI+C];MOV ESI,DWORD PTR [ESI+1C];LABEL1: MOV eax,DWORD原创 2011-07-04 21:01:51 · 700 阅读 · 0 评论 -
SEH汇编
00401000 >/$ E8 0B000000 CALL seh.00401010 ;//下一条指令入栈(返回地址)00401005 |. 8B6424 08 MOV ESP,DWORD PTR SS:[ESP+8] ;//指向lpseh。lpseh是我们EXCEPTION_REGISTRATION结构的地址。00401009 |. 31C0 XO原创 2011-06-24 15:24:00 · 1981 阅读 · 0 评论 -
Kernel32.dll导出函数的CRC32码
#include #include #define MAXSIZE 2048typedef struct tagElem{ unsigned int iData[MAXSIZE+1]; int iLength;}Elem;////////////////////////////////////////////////////////////////// 计算字符原创 2011-06-27 23:26:00 · 1136 阅读 · 0 评论 -
VC屏幕截图源程序(支持对鼠标光标位置的保存)
<br />#include <windows.h>//hBmp位图句柄 lpszFile保存的文件名称 iBitCount位图每像素的bit数 BOOL SaveBitmap(HBITMAP hBmp, LPCTSTR lpszFile, int iBitCount){ PBITMAPFILEHEADER pbf = NULL ; //位图文件头指针 PBITMAPINFO pbi = NULL ; //位图信息指针 PBITMAPINFOHEADER pbih = NULL原创 2011-03-24 09:52:00 · 3167 阅读 · 1 评论 -
大数的进制转换
<br />原理可以参考http://www.cnblogs.com/phinecos/archive/2009/09/11/1564975.html 《浅谈大数的进制转换》<br /> <br />//ConvSystem.c#include <stdio.h>#include <stdlib.h>#include <string.h>typedef unsigned char byte, *pbyte ;typedef unsigned int uint ;char *s原创 2011-03-02 23:00:00 · 1618 阅读 · 1 评论 -
MBR引导代码反汇编分析(XP系统)
<br />本本装了GRUB,MBR的引导代码就GRUB改了。只好在虚拟机里A一份出来拿来分析。用UE打开MBR的备份文件,如下:图中3个用红色矩形框框住的是3个字符串(Invalid partition table、Error loading operating system、Missing operating system)的地址相关的,分别是0x12C、0x144、0x163剩下的用蓝色矩形框框住的不知道什么用途,不影响分析,实际MBR的可执行代码到0x12B处结束。用ndisasm反汇编MBR后如下原创 2010-10-20 20:19:00 · 4627 阅读 · 1 评论 -
VC6 SDK编程中使用XP样式,程序无法启动。
<br />写了个简单的联网对时程序,以便校准电脑的时间(我的电脑的时间老是偏快,老毛病,从买来开始就有,不确信是不是纽扣电池的原因)。<br /> <br />程序写完,想给程序界面做个美化,使用 XP样式。使用一个xml配置,如下:<br /> <br /><?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifes原创 2010-11-30 17:43:00 · 566 阅读 · 0 评论 -
【转】一道高精度计算题
<br />//程序来自http://www.xiaoxia.org/1173.html 作者:小虾<br />计算 (1+2^0)*(1+2^1)*(1+2^2)...(1+2^32)的值<br />结果是160位,<br />41900194778866063098<br />69616409977680717118<br />75372548418310142014<br />25167533420258842344<br />35351687855236795051<br />8864694017转载 2010-06-28 21:32:00 · 969 阅读 · 0 评论