longer1000 发表于 2012-7-19 08:22:36

难度不小哦!!!!!!!

hhh454 发表于 2012-7-19 09:02:20

仲文玉 发表于 2012-7-18 18:14 static/image/common/back.gif
先把思路整理好再说

谢谢帮住,我是初学的,也用了你的工具箱,这个帖子,我的目的就是想学习“if”的使用,一直不会用判断,恳请帮忙,把代码改对,万分感谢

邹锋 发表于 2012-7-19 09:49:49

(defun c:tt()
;输入
(setq zhusn 2222)
(alert "申请码为:2222")
(setq zhuce (itoa (getint "\n请输入注册码:")))
(vl-registry-write "HKEY_CURRENT_USER\\Software\\TOOLS" "SN" zhuce)
(setq zhukey (vl-registry-read "HKEY_CURRENT_USER\\Software\\TOOLS" "SN"))
(if (= zhukey "1111")
    (progn
      (setvar "CMDECHO" 0)
      (command "line")
      (setvar "CMDECHO" 1)
      )
    (alert "请输入正确定的注册码")
    )
(princ)
)

邹锋 发表于 2012-7-19 09:55:34

本帖最后由 邹锋 于 2012-7-19 09:57 编辑

(if (= zhukey "1111");;;;判断zhukey是不是等于"1111"
(progn               ;;;如果上面判断正确则执行下面程序
   (setvar "CMDECHO" 0)
   (command "line")
   (setvar "CMDECHO" 1);;;执行完毕
         (alert "请输入正确定的注册码") ;;;;如果判断结果不正确 则提示输入正确注册码

hhh454 发表于 2012-7-19 10:02:03

邹锋 发表于 2012-7-19 09:55 static/image/common/back.gif
(if (= zhukey "1111");;;;判断zhukey是不是等于"1111"
(progn               ;;;如果上面判断正确则 ...

谢谢帮忙,一直不懂“if” 的运用,

hhh454 发表于 2012-7-19 10:20:11

邹锋 发表于 2012-7-19 09:49 static/image/common/back.gif


你好,邹老师,我的想法是这样的:
1,输出提示码。(然后除2得到注册码,)
2,第一次执行命令时,提示输入注册码,注册码正确,执行命令,不正确,提示输入正确注册码。
3,假如第一次已经输入正确的注册码,第二次执行命令时,自动读取注册码,不需要自己输入,
我自己按照写入注册表的方法,试了好多次,行不通,

357785513 发表于 2012-7-19 15:20:24

噗,噗,噗,噗,噗,老是要输入注册码呀

hao3ren 发表于 2012-7-19 17:38:23

(defun c:tt ()
(setq zhukey (vl-registry-read "HKEY_CURRENT_USER\\Software\\TOOLS" "SN"))
(if (/= zhukey "1111")
(progn
(setq zhukey "1111")
(setq zhusn 2222)
(alert "申请码为:2222")
(setq zhuce (itoa (getint "\n请输入注册码:")))
(if (/= zhukey zhuce)
(progn
(alert "请输入正确的注册码")
(exit)
)
(progn
(vl-registry-write "HKEY_CURRENT_USER\\Software\\TOOLS" "SN" zhuce)
)
)
)
)
(setvar "CMDECHO" 0)
(command "line")
(setvar "CMDECHO" 1)
(princ)
)

flytoday 发表于 2012-7-19 18:17:57

楼上的注册码怎么计算啊!………大师

wudi 发表于 2012-7-19 19:46:35

学习下,看看高手的大作
页: 1 [2] 3 4
查看完整版本: 最简单的为lisp添加注册功能源代码