Shengfantasy 发表于 2019-4-9 21:19:40

(defun 字串分解 (字串 / i k s lst)
(setq i 0 k (chr 160))
(while (/= "" (setq s (substr 字串 (setq i (1+ i)) 1)))
    (if (< s k)
      (setq lst (cons s lst))
      (setq lst (cons (substr 字串 i 2) lst)
                                i (1+ i))
    )
)(reverse lst)
)

这个函数里的 k (chr 160) 和 (if (< s k)...)是什么意思啊?

wowan1314 发表于 2019-9-8 23:08:09

mark~ mark~ mark~

qwsss31 发表于 2024-6-9 19:33:19

看个热闹小尝试一下哈

qwsss31 发表于 2024-6-10 00:13:12

已经完美调试了,大佬牛啤,支持支持,用好了就四位验证码是咋回事哈

tanjurun 发表于 2024-6-10 12:28:51

可以拿出来分享了,不错

lengxiaxi 发表于 9 小时前

本帖最后由 lengxiaxi 于 2025-4-30 11:17 编辑

自己给别人算号注册时,代码应该改为:
(defun rere (/ 已注册码 注册码 输入注册码 cpusn)
(setq 已注册码 (vl-registry-read "HKEY_CURRENT_USER\\Software\\solycad" "SN"))
(setq cpusn (getstring "\n请输入申请码(买家给你的):")) ; 改为手动输入:ml-citation{ref="2" data="citationList"}
(setq 注册码 (strcat (加密字串 (substr cpusn 2 4)) (加密字串 (substr cpusn 7 4)))) ; 保持原有加密逻辑:ml-citation{ref="2" data="citationList"}

(princ (strcat " ★★★★★你要给别人的注册码为:" 注册码 "\n")) ; 调试用提示

(if (/= 已注册码 注册码)
    (progn
      (princ (strcat "    申请码为:    " "\n\n" cpusn))
      (setq 输入注册码 (getstring "\n请输入注册码:")) ; 优化提示文字:ml-citation{ref="2" data="citationList"}
      
      (if (/= 注册码 输入注册码) ; 改为直接对比生成的注册码:ml-citation{ref="2" data="citationList"}
      (progn
          (alert "注册码错误!") ; 优化错误提示:ml-citation{ref="6" data="citationList"}
          (exit)
      )
      (progn
          (vl-registry-write "HKEY_CURRENT_USER\\Software\\solycad" "SN" 输入注册码) ; 写入注册表:ml-citation{ref="2,5" data="citationList"}
          (princ "\n注册成功!")
      )
      )
    )
    (alert "\n   该设备已注册") ; 优化已注册提示:ml-citation{ref="6" data="citationList"}
)
(princ)
)

页: 1 2 3 4 5 6 7 8 9 [10]
查看完整版本: 看好多的人想要注册码,给出个简单注册程序的代码,看能收多少钱,高手就不要进了。