Microchip XC8/XC16/XC32 破解

2020-02-06 09:51发布

复制下列代码,另存为xclm.c,然后用mingw编译(推荐Code::Blocks的ide)生成xclm.exe,然后替换掉安装目录里面的同名文件即可。
  1. /*****************************************************************************
  2. *
  3. * xclm.c - A replacement license server for Microchip embedded compilers
  4. *
  5. *****************************************************************************/

  6. #include <stdio.h>
  7. #include <string.h>
  8. #include <stdlib.h>

  9. enum
  10. {
  11.     LICENSE_FREE,
  12.     LICENSE_STANDARD,
  13.     LICENSE_PRO,
  14.     LICENSE_NULL,
  15.     LICENSE_NOCPP,
  16.     LICENSE_CPPFREE,
  17.     LICENSE_CPPFULL
  18. };

  19. /* Padded keystring for XC8 compiler */
  20. const char XC8_KEY[] = "120205690315959428539973816151144999076498629234049888"
  21.                        "179227155534183820578631309018645587360933525814619915"
  22.                        "779526071941849199599867328321377639683720790016145394"
  23.                        "178294936006671919157552224249424396156390966410329115"
  24.                        "909578096551465127991840510571525598801543710978110203"
  25.                        "982753256678760352233698494166181105701471577863949973"
  26.                        "752378527793703095602570185318279000307654710756304884"
  27.                        "332086971157374238079344503160762531771453544441183117"
  28.                        "818224971852635709182448998796203508335756172022603393"
  29.                        "785870328131267807990054177348691152537065623705744096"
  30.                        "622171290262732073236149224291304052855537234103307757"
  31.                        "779806424202430488281521000914602653822069627155202082"
  32.                        "274335001015294801198690117625951676366998171835575234"
  33.                        "880703719555742347294083595208861666202572853755813079"
  34.                        "282586487282173705566196898952662018776810629200817792"
  35.                        "338135876828426412432431480282173674506720693507626895"
  36.                        "304345939375032966363775750624733239923482883107733905"
  37.                        "27680200757984356120205690";

  38. int main(int argc, char *argv[])
  39. {
  40.     int license = LICENSE_FREE;
  41.     int ii;

  42.     for (ii = 0; ii < argc; ++ii)
  43.     {
  44.         if (!strcmp(argv[ii], "swxc32") ||
  45.             !strcmp(argv[ii], "swxc16") ||
  46.             !strcmp(argv[ii], "swxc8"))
  47.         {
  48.             license = LICENSE_PRO;
  49.         }
  50.         else if (!strcmp(argv[ii], "swxcpp32"))
  51.         {
  52.             license = LICENSE_CPPFULL;
  53.         }
  54.         else if (!strcmp(argv[ii], "-hash"))
  55.         {
  56.             int index = atoi(argv[ii+1]);
  57.             printf("%.10s", &XC8_KEY[index]);
  58.         }
  59.     }

  60.     return license;
  61. }
复制代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
99条回答
i55x
1楼-- · 2020-02-09 23:22
caoxuedong 发表于 2013-6-14 16:36
XC32测试有问题,编译器设置为O3,编译时自己跳回FREE,代码量没有任何变化。是不是

/* Padded keystring f ...

不懂别乱叫,不贴图什么意义也没有。
caoxuedong
2楼-- · 2020-02-10 00:02
本帖最后由 caoxuedong 于 2013-6-14 21:41 编辑
i55x 发表于 2013-6-14 19:26
不懂别乱叫,不贴图什么意义也没有。


楼主不要NB,你的这个也不是你原创,我在Sonsivri论坛早就看过,初期的破解版本确实不能破解XC32,如果你说可以,你贴图出来,在我这里既然不能测试出来,两种编译结果一样,贴两张一样的图有什么意义呢!
i55x
3楼-- · 2020-02-10 01:03
caoxuedong 发表于 2013-6-14 21:32
楼主不要NB,你的这个也不是你原创,我在Sonsivri论坛早就看过,初期的破解版本确实不能破解XC32,如果你 ...

既然你在Sonsivri看过,怎么不贴juvaan的版本呢?我现在就能开最高优化,既然两个版本出来的代码不一样,按你的逻辑贴出来有什么意义吗?
caoxuedong
4楼-- · 2020-02-10 06:37
我是说我测试的结果和marcodassi的结果一样,总是停留在Free Mode,编译的代码长度没有发生变化,-O3似乎没有发生作用,总是自己变回FREE MODE.
i55x
5楼-- · 2020-02-10 11:34
 精彩回答 2  元偷偷看……
kevin_me
6楼-- · 2020-02-10 16:21
牛逼。
xc系列的编译器是微芯推的下一代编译器。
而且现在的软件代码库也逐渐脱离c18,c30系列了。
楼主这个和谐如果完美运行,那真是好福利。

一周热门 更多>