东升铮
发表于 2024-4-17 06:36:22
你有种再说一遍 发表于 2024-4-15 16:42
用代码解决代码的事情,直接制作一个lisp编译器,
然后启动编译之后把函数名换成流水号...
还能直接把lisp ...
工程量很大,光一个 1to2 的解释器就够折腾的, 当年是可以编译成.arx 文件的,这样玩的话,又回到以前咯。
chslwj521
发表于 2024-4-17 10:07:55
随然现在没明白,先收藏有待以后学习,向大师致敬!
dcl1214
发表于 2024-4-17 11:43:57
本帖最后由 dcl1214 于 2024-4-17 12:06 编辑
以下良好习惯虽然不是有助于编译程序,但是有助于代码稳定性
(getpoint "请点击一点")
如果用户按下了esc,那么就会导致程序退出,一旦程序退出,你还要在代码里面加上出错恢复,为了不让用户乱操作导致程序出错,请改成以下代码:
(while (not p)
(setq p (vl-catch-all-apply 'getpoint (list "请点击一点\nQ退出")))
(if (vl-catch-all-error-p p)
(progn(setq p nil)(alert "你想退出吗?可以叫开发人员通过initget控制您使用Q代替esc"))
)
)
这一段代码就可以屏蔽用户的esc的错误行为
你有种再说一遍
发表于 2024-4-17 18:39:19
2024-4-17 06:36
1to2.arx...
lisp还嫌工程量大哦,那做一个lua和python不得疯了
我爱lisp
发表于 2024-9-5 15:11:51
你有种再说一遍 发表于 2024-4-15 16:42
用代码解决代码的事情,直接制作一个lisp编译器,
然后启动编译之后把函数名换成流水号...
还能直接把lisp ...
想多了,lisp编译为c++看看未来10年能不能行
你有种再说一遍
发表于 2024-9-5 19:04:42
我爱lisp 发表于 2024-9-5 15:11
想多了,lisp编译为c++看看未来10年能不能行
以前就行,还未来...你不会做就去看看LLVM
我爱lisp
发表于 2024-9-30 09:21:29
dcl1214 发表于 2024-4-15 09:35
set尽可能改成setq
例如:
这里好像没有写全,我尝试补充一下:(mapcar (function set (list 'a 'b) S)))) 好像不太明白
masterlong
发表于 2024-9-30 09:40:16
ssyfeng 发表于 2024-4-15 09:51
我也不喜欢用全局变量,不过很多用户喜欢记住上次操作的一些值,为下次命令启动时减少输入。所以有时也没 ...
字符、数字之类的值
可以用setcfg、getcfg来读取
kozmosovia
发表于 2024-9-30 14:53:09
要实打实抗反编译,就老老实实采取一些技术手段,单纯靠写代码习惯来抗反编译,精神胜利法