易语言编译exe文件怎么反编译

怎么把易语言写好的exe文件反编译出源码呀,有些东西需要改动,哪位朋友指导下

【相关推荐】



  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/1084385
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:c语言生成exe文件,打开exe文件闪退怎么办
  • 您还可以看一下 韦语洋(Lccee)老师的一机一码加密、被破解自动销毁随时授权回收升级系列视频课程课程中的 把exe变成图片格式运行,提高破解难度小节, 巩固相关知识点
  • 除此之外, 这篇博客: 源文件是如何转换成可执行文件的中的 链接器链接得到EXE文件 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:

    ​ 编译后得到的文件为.obj目标文件,虽然目标文件的内容是本地代码,但是无法直接运行,原因就是:当前程序还处于未完成状态。故.obj文件是尚未完成的本地代码。

    #sample.c
    
    #include <windows.h>
    #include <stdio.h>
    
    //消息框的标题
    char* title ="test program";
    
    //返回两个参数的平均数 
    double Average(double a,double b){
    	return (a+b)/2;
    } 
    
    // 程序运行起始位置的函数 
    int WINAPI WinMain(HINSTANCE h,HINSTANCE d, LPSTR s,int m){
    	double ave;		//保存平均数的变量 
    	char buff[80];		//保存字符串的变量 
    	ave=Average(123,456);
    	
    	//编写显示在消息框中的字符串 
    	sprintf(buff,"aver=%f",ave);
    	
    	//打开消息框 
    	MessageBox(NULL,buff,title,MB_OK);
    }
    

    上面的源代码生成的目标文件为sample.obj

    Average()用来返回两个参数的平均值;WinMain()是程序的运行起始函数,函数Average()和函数WinMain()是我们自己编写的,处理的内容记述在源代码中。

    sprintf()是通过指定格式把数值变换成字符串的函数;MessageBox()是消息框函数。不过代码中并没有记述这两个函数的处理内容。因此就必须将存储这sprintf()MessageBox()的处理内容的目标文件(假设为c0w32.obj)和sample.obj结合,否则处理就不完整,.exe文件就无法完成

    • 把多个目标文件(obj文件)结合,最终生成一个exe文件的处理就是链接,运行链接的程序就是链接器(linkage editor)

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^