佚名通过本文主要向大家介绍了exe文本编辑器,exe文本,exe文本修改,exe文本提取,exe转文本等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: exe 文本编辑 来改变运行结果的问题?
描述:
c源码用来生成一个输出”我“的程序
那个易语言是用来改写c生成的exe
就是,把“我”改写成“你”
我已经实现了
好吧,该怎么形容呢。。
就是,可执行文件肯定以2进制形式存在硬盘上
那我就可以改写2进制代码的形式,来达到改写程序运行结果的目的
别如说我这个字,以16进制文本查看的话就是ced2,字节集或者说是char[]的话就是{206,210,0}
现在的问题是,
如果c源码,这样写的话
printf("我");
在生成的exe中寻找ced2并改写,就可以达到改变输出内容的目的,比如说输出”你“这个字
如果c源码,这样写的话
char a[]={206,210,0};
printf("%s",a);
搜索ced2是找不到的,在原来的读写位置输出的是{37,115}
我想问的是{37,115}也就是十六进制2573 代表我这个字 而ced2也代表我 这是为什么?
编码不一样么?还是说37,115,是一个跳转指向的的是char a[]={206,210,0};定义的那一块
如果指向定义的那一块,该如何搜索,以达到改变文本的目的?
描述:
pe汇编c

c源码用来生成一个输出”我“的程序
那个易语言是用来改写c生成的exe
就是,把“我”改写成“你”
我已经实现了
好吧,该怎么形容呢。。
就是,可执行文件肯定以2进制形式存在硬盘上
那我就可以改写2进制代码的形式,来达到改写程序运行结果的目的
别如说我这个字,以16进制文本查看的话就是ced2,字节集或者说是char[]的话就是{206,210,0}
现在的问题是,
如果c源码,这样写的话
printf("我");
在生成的exe中寻找ced2并改写,就可以达到改变输出内容的目的,比如说输出”你“这个字
如果c源码,这样写的话
char a[]={206,210,0};
printf("%s",a);
搜索ced2是找不到的,在原来的读写位置输出的是{37,115}
我想问的是{37,115}也就是十六进制2573 代表我这个字 而ced2也代表我 这是为什么?
编码不一样么?还是说37,115,是一个跳转指向的的是char a[]={206,210,0};定义的那一块
如果指向定义的那一块,该如何搜索,以达到改变文本的目的?