Sie sind auf Seite 1von 3

Tim vc-xin cho AutoCAD ca bn

th 5, 20/12/2012 01:33:08- chuyn mc

Trang ch
Cng ngh
Kinh nghim - Th thut

Virus c vit di ngn ng Autolisp (mt dng virus macro) chy di mi trng
AutoCAD, n lm mt mt s lnh thng dng cng nh thay i thit lp h thng khin vic
s dng AutoCAD tr nn rt kh khn. My tnh nhim virus ny th d c ci li Windows
hay AutoCAD u khng khc phc c v file virus nm ri rc khp cc th mc trn cng.
Khc vi Macro trong Excel hay Word, phn mm AutoCAD khng th disable autolisp v hn
na ngi dng AutoCAD li s dng rt nhiu autolisp cho cng vic ca h.
Mt s phn mm Antivirus (nh BKAV, Kapersky,...) dit c mt s dng ca virus ny
nhng khng dit c ht bin th a dng ca n ang ngy ngy c sn sinh. Nguyn nhn
ca s a dng cc bin th l v mt ngi c trnh Autolisp mc c bn cng c th h
bin mt con virus gc thnh mt bin th khc ch bng phn mm Notepad.
Bi vit ny gii thiu mt cch to vc-xin tim vo AutoCAD. Liu vc-xin l mt on
m Autolisp cm mi thao tc ghi vo cc th mc h thng ca AutoCAD - trit tiu nguyn
nhn cn bn nht ca s ly nhim virus. Lnh cm ny khng nh hng n cc m lisp lnh
tnh thng thng. Ngoi ra, phng nga ly nhim, vc-xin ny s loi b mi file t ng
chy nm th mc cha bn v trnh b t ng ti ln v thay i thng s h thng.
<>Gii php:
AutoCAD khi khi ng, s ln lt t ng load cc file Autolisp. Trong file acad20##.lsp
(20## l phin bn AutoCAD, v d 2012) trong th mc ci t AutoCAD c load u tin.
Cc file file acad.lsp, acaddoc.lsp, acad.fas v acad.vlx,... (cc file virus tim tng) trong th mc
cha bn v s c t ng load vo ngay sau . V vy ta s tim vc-xin vo file ny v
hiu ha cc m virus tim tng ny. Sau y l 3 bc x l tim vc-xin.
Bc 1. Chy phn mm Notepad v m file acad20##.lsp trong th mc C:Program
FilesAutodeskAutocad 20##Support. Nu bn khng tm thy file ny, hy g <>(findfile
acad20##.lsp) ti dng lnh AutoCAD hin th ng dn ti file ny, bn nh
thay 20## bng phin bn AutoCAD ca bn (v d: 2000, 2002, 2004,..2013).
Bc 2. Nhp cc on m lnh sau vo cui file autocad20##.lsp:

;lu lnh open gc

<>(if (null cadvietoon)(setq cadvietoon open))

; hm xc nh mt file c nm trong th mc h thng hay khng?


<>(defun cadvietisf(f) (wcmatch (strcase (vl-filename-directory f)) (strcase (strcat (vl-filename-directory
(findfile "base.dcl")) "*," (strcat (vl-filename-directory (findfile "acad.exe")))"*"))))

; G bo v cho hm open file


<>(pragma '((unprotect-assign open)))

; nh ngha li hm open file chn thao tc write v append


; nu file nm trong th mc h thng
<>(defun open (f m)
<> (if (and (wcmatch m "W,A,w,a") (cadvietisf f))
<>

(progn (princ (strcat " CADViet Vacine prevents writing to: " f " -------------------- ")) nil)

<>

(cadvietoon f m)

<> )
<>)

; t li bo v cho hm open file


<>(pragma '((protect-assign open)))

; Xa cc file autorun khng nm trong th mc h thng


<>(foreach fn (list "acad.lsp" "acad.fas" "acad.vlx" "acaddoc.lsp" "acaddoc.fas" "acaddoc.vlx" "acad.dvb")

<> (if (and (findfile fn) (not (cadvietisf fn)))

(vl-file-delete (findfile fn)) )

<>)

; Gii phng bin


<>(setq fn nil)

; Gi vl-load-com nu cha c gi
<>(if vlax-ename->vla-object (vl-load-com))

; In thng bo vc-xin c load ln thnh cng


<>(princ " ---------- CADViet Vaccine is loaded! ---------- ")
<>(princ)

Bn lu l cc t sau du chm phy (;) ca m lnh l cc dng comment, khng nht thit
phi g vo. Hoc bn c th download dng m trn : http://www.cadviet.com/upfiles/3/vs.lsp
sau copy v paste vo file acad20##.lsp.
Bc 3. Save file acad20##.lsp li.
Nh vy l bn tim cho AutoCAD ca bn mt liu vc-xin, m bo t gi tr i bn s
khng b nhim AutoCAD na. Nu v mt l do no bn mun g vc-xin ra khi
AutoCAD, bn ch cn xa cc dng thm vo ra khi file l c.
Xem tin cng ngh mi nht ti TECHZ.VN
Ngun : Tp ch Echip

Das könnte Ihnen auch gefallen