乾坤大挪移!!!
来源:互联网 发布:淘宝名龙堂怎么样 编辑:程序博客网 时间:2024/03/29 01:33
//乾坤大挪移!!!
//VC 6 编译运行通过
//花了自己一个晚上,值得^_^
#include <windows.h>
#include <stdio.h>
int Max(int a, int b)
{
return a>b?a:b;
}
int Min(int a, int b)
{
return a<b?a:b;
}
void main()
{
char buf[100];
//*
#ifdef _DEBUG
#define CODE_LEN 56
DWORD dwAddrMin = (DWORD)Min + *((DWORD *)((char *)Min + 1))-5;
DWORD dwAddrMax = (DWORD)Max + *((DWORD *)((char *)Max + 1))-5;
for(int i=0; i<CODE_LEN; i++) buf[i] = *((char *)dwAddrMax+i);
#else
#define CODE_LEN 26
DWORD dwAddrMin = (DWORD)Min;
DWORD dwAddrMax = (DWORD)Max;
for(int i=0; i<CODE_LEN; i++) buf[i] = *((char *)dwAddrMax+i);
#endif
VirtualProtect((void *)dwAddrMin, CODE_LEN, PAGE_EXECUTE_READWRITE, 0);
VirtualProtect((void *)dwAddrMax, CODE_LEN, PAGE_EXECUTE_READWRITE, 0);
WriteProcessMemory(GetCurrentProcess(), (void *)dwAddrMax, (void *)dwAddrMin, CODE_LEN, 0);
WriteProcessMemory(GetCurrentProcess(), (void *)dwAddrMin, (void *)buf, CODE_LEN, 0);
//*/
printf("Min(1, 9) = %d/n", Min(1, 9));
printf("Max(1, 9) = %d/n", Max(1, 9));
}
============================
结果:
Min(1, 9) = 9
Max(1, 9) = 1
//VC 6 编译运行通过
//花了自己一个晚上,值得^_^
#include <windows.h>
#include <stdio.h>
int Max(int a, int b)
{
return a>b?a:b;
}
int Min(int a, int b)
{
return a<b?a:b;
}
void main()
{
char buf[100];
//*
#ifdef _DEBUG
#define CODE_LEN 56
DWORD dwAddrMin = (DWORD)Min + *((DWORD *)((char *)Min + 1))-5;
DWORD dwAddrMax = (DWORD)Max + *((DWORD *)((char *)Max + 1))-5;
for(int i=0; i<CODE_LEN; i++) buf[i] = *((char *)dwAddrMax+i);
#else
#define CODE_LEN 26
DWORD dwAddrMin = (DWORD)Min;
DWORD dwAddrMax = (DWORD)Max;
for(int i=0; i<CODE_LEN; i++) buf[i] = *((char *)dwAddrMax+i);
#endif
VirtualProtect((void *)dwAddrMin, CODE_LEN, PAGE_EXECUTE_READWRITE, 0);
VirtualProtect((void *)dwAddrMax, CODE_LEN, PAGE_EXECUTE_READWRITE, 0);
WriteProcessMemory(GetCurrentProcess(), (void *)dwAddrMax, (void *)dwAddrMin, CODE_LEN, 0);
WriteProcessMemory(GetCurrentProcess(), (void *)dwAddrMin, (void *)buf, CODE_LEN, 0);
//*/
printf("Min(1, 9) = %d/n", Min(1, 9));
printf("Max(1, 9) = %d/n", Max(1, 9));
}
============================
结果:
Min(1, 9) = 9
Max(1, 9) = 1
- 的乾坤大挪移
- 乾坤大挪移!!!
- 乾坤大挪移 大法
- 乾坤大挪移
- Redis cluster - 乾坤大挪移
- SQL Server的乾坤大挪移
- 基金转换——乾坤大挪移
- xml,dict,json,vector乾坤大挪移
- 乾坤大挪移-移动所有数据文件
- 优秀博文乾坤大挪移
- SQL 内功心法之乾坤大挪移
- (6) 实战!数据恢复之乾坤大挪移
- 乾坤大挪移--安装系统后轻松移动配置文件
- Ruby On Rails之继续乾坤大挪移
- C++ 是九阳神功,VC、BCB是乾坤大挪移
- 动态创建无级子菜单:乾坤大挪移无极紫菜汤
- Photoshop:把玻璃瓶“乾坤大挪移”
- 吉哥系列故事——乾坤大挪移
- 泛型的使用[C#]
- Oracle补丁的下载地址
- 谈谈心
- 升级MySQL过程中出现Unknown command错误
- 极力推荐~十大必看经典电影
- 乾坤大挪移!!!
- 页面重构中的模块化思维
- net sites 收藏
- Internal 关键字使用(1)
- Top 10 Principles for Software Generation (zt)代码生成的十大原则
- 如何得到客户机、服务器的名称和IP地址
- 双色球彩票管理系统
- 如何让百度收录
- 上传图片