开发平台(Platform): (Ex: Win10, Linux, ...)
C语言
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
Gcc
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
N
问题(Question):
最近想利用指标写dll修改程式
目标是想要主程式进行到一半进行数值修改
步骤:
1.编译dll档案,指令:gcc -shared -o change.dll change.c
#include <stdio.h>
#include <stdlib.h>
_declspec(dllexport) void change()
{
int *p = (int *)0x28ff2c;
*p = 500;
}
2.连结以及编译主程式,指令:gcc -o target.exe target.c -L. -lchange
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
int num = 0;
printf("%x\n", &num);
while(1)
{
num++;
printf("\n%d", num);
Sleep(6000);
}
return 0;
}
最后我的num并没有被修改,请问是为什么呢@@