本帖最后由 作者 于 2008-12-5 9:27:05 编辑
只是觉得你编的哪个比较全吧了! 想多学习一下!毕竟每个人的思路都是不一样的! 这是和朋友很早用C编制了一个小程序,可以把LISP文件加密,加密后的文件仅仅是一些毫无意义的 符号,但却可以在Auto CAD中正常运行,这样就对LISP文件起到了一定的保护作用。LISP源程序库中注释部分即分号以后直到行尾的部分应在加密前去掉。也可以对原程 序做少许改动,增加注释行自动识别处理功能,使这个加密程序更加完善。 /*AutoCAD LISP文件加密程序*/ #include main() { FILE*fi,*fo; register char zf1,zf2; char fin[30],fou[30]; int kz; printf("Enter source file name:"); scanf ("%s",fin); printf("Enteh newfile name"); scanf("%s",fou); fi=fopen(fin,"rb"); if(fi==NULL) { printf("can not open file %s\n",fi); exit(1); } fo=fopen(fou,"wb"); fputs("AutoCAD PROTECTED LISP file\n",fo); fputc(26,fo); fputc("a",fo) fputc("I",fo); zf2=fgetc(fi); zf1=73; while((zf2=fgetc(fi))!=ox1a) { if (zf1>127) zf1=zf1-256; if (zf2==0x0d) zf2=fgetc(fi); if (zf2>127) zf2=zf2-256; zf1=zf1<0?(0x01|(zf1<<1)):zf1<<1; zf1=zf1^zf2; if((zf1==0x1a))||(zf1==0x0d)) zf1=zf2; if(zf1!=0x1a) fputc(zf1,fo); } fputc(26,fo); fclose(fi); fclose(fo); }
给大家参考一下!希望liminnet大哥能帮下小妹!能让小妹也学习学习!非常感谢了~ 我邮箱上面有~ |