936478098 发表于 2018-1-13 11:28

谁帮忙分析下源码,求思路。

(DEFUN FIND_SERIALNUMBER (DRIVE / FILSYS VAL)
(setq FILSYS (vlax-create-object "Scripting.FileSystemObject"))
(setq VAL (vlax-invoke FILSYS "GetDrive" DRIVE))
(setq VAL (VL-CATCH-ALL-APPLY 'vlax-get (LIST VAL "SerialNumber")))
(vlax-release-object FILSYS)
(if (VL-CATCH-ALL-ERROR-P VAL)
    (PROGN (setq VAL nil))
    (PROGN VAL)
)
)
(DEFUN FP_CHECK_COMPUTER (/              FP_REGNUMBER
                          NUM              PP_REGNUM          REG_PATH
                          *ERROR*   COMPUTERNAME
                          CDATE              NAMES          FILE3
                          FILETIME    REG_PATH          USERDOMAIN
                          PATH
                       )
(setq        REG_PATH
       "HKEY_CURRENT_USER\\Software\\VB and VBA Program Settings\\temp"
)
(setq FP_REGNUMBER (VL-REGISTRY-READ REG_PATH "注册码"))
(if
    (/=
      FP_REGNUMBER
      (RTOS (+ (/ (ATOI (RTOS (ATOI (RTOS (FIND_SERIALNUMBER "C:"))))) 3)
             8
          )
          2
          0
      )
    )
   (PROGN (ALERT (STRCAT "命令未注册,请注册!"))
          (setq NUM (RTOS (FIND_SERIALNUMBER "C:")))
          (setq
              PP_REGNUM        (RTOS (+ (/ (ATOI (RTOS (ATOI NUM))) 3) 8) 2 0)
          )
          (TEXTSCR)
          (PRINC (STRCAT "您的申请码为: " NUM))
          (setq FP_REGNUMBER (GETSTRING "\n请输入注册码:"))
          (if        (/= FP_REGNUMBER PP_REGNUM)
              (PROGN (ALERT "注册码无效!") (EXIT))
              (PROGN (VL-REGISTRY-WRITE REG_PATH "注册码" PP_REGNUM)
                     (ALERT "您已注册成功!")
              )
          )
   )
   (PROGN (PRINC "核对注册码正确"))
)
(setq PATH (FINDFILE "TempLoadRegdit.txt"))
(if (/= (VL-FILE-SIZE PATH) 61)
    (PROGN (ALERT "注册文件错误") (EXIT))
)
(setq FILETIME (VL-FILE-SYSTIME PATH))
(if (= FILETIME nil)
    (PROGN (ALERT "未找到注册时间") (EXIT))
)
(if (> (NTH 0 FILETIME) )
    (PROGN (if (> (NTH 1 FILETIME) 1)
             (PROGN (ALERT "试用已到期,请联系程序开发者!"))
             (PROGN (EXIT))
           )
    )
)
(setq FILE3 (OPEN PATH "W"))
(WRITE-LINE
    "HKEY_CURRENT_USER\\Software\\VB and VBA Program Settings\\temp"
    FILE3
)
(CLOSE FILE3)
(PRINC)
)

1.谁帮忙翻一下这段你程序,我想跳过"试用已到期,请联系程序开发者!"就行。
2.另外他的 if 语句 判断读取的FILETIME 是什么东西呢。。。解释下

chinwawa 发表于 2018-1-14 05:57

进来看看 学习 学习
页: [1]
查看完整版本: 谁帮忙分析下源码,求思路。