本帖最后由 自贡黄明儒 于 2013-1-21 18:17 编辑

;;对于一个程序,在一个环境下可以运行,在另一个环境下可能运行出错,多半是变量的不同
;;安装ET工具后,运行_.sysvdlg,选择Select All,生成*.svf。然后比较两个*.svf的不同处
;;逐个分析这些不同的变量,看看那个影响了程序。如果是,则改进一下
;;******************************自贡运机集团 自贡黄明儒 2013年1月21日
;;比较两张图纸变量的不同
(defun C:CompareVar
       (/ FILE FILE1 FILE2 FN1 FN2 INITDIR TEMP_FILE X1 X2)
  (setq Initdir (getvar "dwgprefix"))
  (if
    (and (setq
           file1 (getfiled "选择要比较变量的第一个文件" Initdir "svf" 0)
         )
         (setq Initdir (strcat (vl-filename-directory file1) "\\"))
         (setq
           file2 (getfiled "选择要比较变量的第二个文件" Initdir "svf" 0)
         )
    )
     (progn
       (setq Temp_File (vl-filename-mktemp nil nil ".txt"))
       (setq file (open Temp_File "w"))
       (setq fn1 (open file1 "r"))
       (setq fn2 (open file2 "r"))
       (while (setq x1 (read-line fn1))
         (setq x2 (read-line fn2))
         (if (equal x1 x2)
           nil
           (progn (write-line x1 FILE)
                  (write-line x2 FILE)
                  (write-line "" FILE)

           )
         )
       )
       (close fn1)
       (close fn2)
       (close FILE)
       (startapp "notepad" Temp_File)
     )
  )
  (if Temp_File
    (vl-file-delete Temp_File)
  )
  (princ)
)
;;******************************自贡运机集团 自贡黄明儒 2013年1月21日

网友答: 牛逼 支持楼主

网友答: 厉害,谢谢楼主

网友答: 回复只为看帖

网友答: 看看效果!!!!!!!!!!

网友答: 谢谢楼主分享

网友答: 为了看你的贴,只好回复你一个水贴

网友答: 看看这个不错!

网友答: 看看是什么好东东,学习下

网友答: 看一看,学习学习!

网友答: 可是如何得到的各变量的内容呢?用SETVAR+日志文件?
  • 上一篇:只刷图层,不刷其他任何特性
  • 下一篇:没有了