一次或两次跑步
有没有一种方法可以让一个加密的lisp程序作为一个试用版,只运行一到两次,然后就会损坏、删除或擦除它自己? 是的,是的,是的。我不会沿着删除路径走,而是使用goes数或按日期,简单的方法是读写注册表,如果11不再有效,则读取一个数字。这里有一些关于使用注册表项的示例。 谢谢我找到了这个
(setq datst(rtos(getvar“cdate”)2 0))
(setq日期字符串
(strcat)
(substr datst 5 2)
"/"
(参考数据7.2)
"/"
(substr datst 1 4)
)
)
你怎么用这个? 我认为Mike55考虑过使用编程检索的日期来限制使用量;代码可能是:
(if (> (getvar "cdate") 20140618)
(progn
(alert "The limit was June 18, 2014")
(exit)
)
)
但是,这将无法控制呼叫数。
请不要错过,日期是从系统中检索的,所以这个解决方案很容易规避。 正如Msasu所说,日期很容易重置,只需重新加载程序也会重置它,因为我暗示了一个更好的方法是每次向注册表写入一个递增的数字。如果他们使用编译后的lisp-FAS重新加载set-clock等,给他们十次并不重要,除非他们知道如何检查注册表中添加的条目,这可能是99.9999%。这里有一些关于代码的帖子,如何创建注册表项并检索,需要仔细研究,在相同的主题下很肯定是保护代码。 Bigal你说得对,我更喜欢写注册表。
我试着使用#标记,但没有成功?
(if(not(getenv“MyDemo”))
(setenv“MyDemo”“1”)
(setenv“MyDemo”(itoa(1+(atoi)(getenv“MyDemo”аа)а)а)
(if(>(atoi(getenv“MyDemo”))10)
(程序
(提醒“您有超过演示时间”)
(退出))) 只是一点拼写
(提醒“您已超过演示时间”) 您必须选择代码摘录,然后按“#”按钮。或者分别写下“”和它的结尾
" at beginning.
页:
[1]