iccarm.exe 处理:

  在安装目录下找到arm\bin\iccarm.exe程序,OD载入,搜索字符串 ,找到“Must request at least one license.”,定位到代码行:

  IAR EWARM破解方法

  在函数入口下断,F9运行程序,到达断点,ALT+K打开调用堆栈窗体,层层堆栈分析,发现可疑代码:

  IAR EWARM破解方法

  先判断返回值eax是否为2,不为2的话ecx置0,然后判断eax是否为0 若eax=0则cl=1,若eax!=0则cl=0 最后在eax=cl返回

  继续分析调用栈,发现只有此处返回1才OK,也就是说上一个函数返回值eax必须=0,

  所以一开下断的函数入口改为:

  IAR EWARM破解方法

  F9运行程序,发现提示内部错误,重新载入,定位到刚才修改的位置,修改代码,下断,F9运行,断下,CTRL+F9多次,来到此处:

  IAR EWARM破解方法

  在此函数入口下断,重新载入程序,重复上面步骤,F9运行来到此处,F8单步运行,发现上图下断位置函数执行后会提示错误,

  在此位置下断,重新载入程序,重复上面步骤,断在此处,F7跟入,分析后发现可疑代码:

  IAR EWARM破解方法

  经过多次分析,发现当此处AL=1时,程序运行成功,所以TEST上面的函数执行将AL置1即可,F7跟入两次以后找到将函数入口改为下面代码即可。

  mov al,1

  retc 0c

  修改以上两处后发现iccarm.exe可以成功运行,且不在提示未授权,使用工具修改iccarm.exe保存

  经过这个步骤后用iar打开工程,已经可以成功编译了。但是不能在线调试仿真。

  以上就是当客小编整理的关于IAR Embedded Workbench For 8051处理方法教程,更多软件教程欢迎关注当客下载站。