哈!!!!
只需发布代码。
如果没有,那么就向人们收取$$的费用,这样你就可以支持你的说法,即它是合法的,没有腐败。你真的会感到内疚,甚至可能会因为销售升级代码而被禁止。 你是对的,
如今,依赖未知的公用事业来源在某种程度上是一个很大的风险。
我附上我写给搜索、查找和杀死“ACADDOC.LSP蠕虫”的程序源代码。
你可以检查它,相信它不会伤害你的电脑后,文件和程序就会使用它。
;;; KillWorm, Mehrdad Ahankhah, www.irancad.com
(setq KillWormVersion 1.42)
(setq KillWormDate "2011/01/04")
(defun C:KW (/ cont kw)
(setvar 'Cmdecho 0)
(command "_.LOGFILEOFF")
(command "_.LOGFILEON")
(setq cont T)
(while cont
(setq cont nil)
(initget "Active Passive ALL Select ? _Active Passive ALL Select ?")
(setq kw (getkword "\nSelect option : "))
(cond
((= kw "Active") (C:KillActiveWorm))
((= kw "Passive") (C:KillPassiveWorm))
((= kw "ALL") (C:KillWormCompletely))
((= kw "Select") (C:KillWormSelectedDir))
((= kw "?")
(textscr)
(princ
(strcat
"
Options:
Active: Kill worm in the AutoCAD environment, if the worm is active.
Passive: Kill worm in the AutoCAD environment, even if the worm isn't active.
ALL: Kill worm in all drives.
Select: Kill worm in selected folder.
?: Help")
)
(setq cont T)
)
)
)
(command "_.LOGFILEOFF")
(setvar 'Cmdecho 1)
(princ)
)
(defun C:KillActiveWorm ()
(if (MT-WormExists)
(C:KillPassiveWorm)
(princ "\nNo worm found, aborting...")
)
(princ)
)
(defun C:KillPassiveWorm (/ FilesList)
(MT-KillWormSources)
(setq FileList (MT-FindLispFiles))
(foreach lsp FileList (MT-KillWorm lsp))
(princ)
)
(defun C:KillWormCompletely (/ FilesList) (MT-KillWormOnDrives) (princ))
(defun C:KillWormSelectedDir () (MT-KillWormOnDirs (MT-GetFolder)) (princ))
(defun MT-KillWormSources (/ found)
(foreach Worm '("acad.vlx" "logo.gif")
(while (setq found (findfile Worm))
(princ (strcat (if (vl-file-delete found)
"\nFile deleted successfully: \""
"\nError occured while deleting file: \""
)
found
"\""
)
)
)
)
)
待续。。。
杀手。lsp 从我之前的威胁继续
(defun MT-KillWormOnDrives ()
(foreach drive (MT-ValidDrives) (MT-KillWormOnDirs (strcat drive ":\\")))
)
(defun MT-GetFolder (/ DirPat)
;;(and
(setq DirPat (getfiled "Browse for folder"
"Select a file in your desired folder"
;;"Open a folder and click on SAVE"
""
16
)
)
;;(setq DirPat (substr DirPat 1 (- (strlen DirPat) 31)))
;
(vl-filename-directory DirPat)
)
(defun MT-ValidDrives (/ firstdrive lastdrive n drive drives)
(princ "\nFinding valid local drives, please wait... Found: ")
(setq firstdrive (ascii "a"))
(setq lastdrive (ascii "z"))
(setq n (1- firstdrive))
(setq drives nil)
(repeat (- lastdrive n)
(princ "_")
(setq drive (chr (setq n (1+ n))))
(if (findfile (strcat drive ":\\."))
(progn (setq drives (append (list drive) drives)) (princ drive))
(princ ".")
)
)
(reverse drives)
)
(defun MT-KillWormOnDirs (dir / worm1 worm2 kill-it subdir)
;;(setq dir "q:\\"); ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(princ (strcat "\nSearching: \"" dir "\""))
(setq worm1 "acad.vlx")
(setq worm2 "logo.gif")
(if (vl-directory-files dir worm2 1)
(progn
(if (vl-directory-files dir worm1 1)
(foreach worm (list worm1 worm2)
(princ
(strcat
(if (vl-file-delete (setq kill-it (strcat dir worm))
)"\nFile deleted successfully: \""
"\nError occured while deleting file: \""
)
kill-it
"\""
)
)
)
(progn (princ (strcat "\nFound but not deleted: \""
dir
worm2
"\"\nPlease check and delete it manually."
)
)
)
)
)
)
(foreach lsp '("*.lsp" "*.mnl")
(foreach lsp1 (vl-directory-files dir lsp 1)
(print lsp1)
(MT-KillWorm (strcat dir lsp1))
)
)
(foreach subdir (vl-directory-files dir nil -1)
(if (not (member subdir '("." "..")))
(MT-KillWormOnDirs (strcat dir subdir "\\"))
)
)
)
(defun MT-FindLispFiles (/ MT-BindDir fileslist found filepath)
;; search in search path: acadprefix
;; ACETAUTO.LSP, AI_UTILS.LSP, and ACAD.MNL
(defun MT-BindDir (file) (findfile (strcat filepath "\\" file)))
(setq filelist nil)
(if (and (setq found (findfile "acad.mnl"))
(setq filepath (vl-filename-directory found))
)
(setq filelist (append (mapcar 'MT-BindDir
(vl-directory-files filepath "*.mnl")
)
filelist
)
)
)
(if (and (setq found (findfile "acad.exe"))
(setq filepath (strcat (vl-filename-directory found) "\\support"))
)
(setq filelist (append (mapcar 'MT-BindDir
(vl-directory-files filepath "*.lsp")
)
filelist
)
)
)
(if (setq filepath (strcat (getvar 'Roamablerootprefix) "support"))
(setq filelist (append (mapcar 'MT-BindDir
(vl-directory-files filepath "*.lsp")
)
filelist
)
)
)
(if (setq found (findfile "acaddoc.lsp"))
(if (not (member found filelist))
(setq filelist (append (list found) filelist))
)
)
(if (and (setq found (findfile (getvar "dwgname")))
(setq found
(findfile
(strcat (vl-filename-directory found) "\\acaddoc.lsp")
)
)
)
(if (not (member found filelist))
(setq filelist (append (list found) filelist))
)
)
filelist
)
(defun MT-WormExists ()
(if (and (= flagx T) (= bz "(setq flagx t)"))
T
nil
)
)
(defun MT-KillWorm
(lsp / row lspfile cont WormFound line-read newlsp newlspfile)
;; delete all instances of: ACAD.VLX and LOGO.GIF
;; clean all instances of: ACETAUTO.LSP, AI_UTILS.LSP, and ACAD.MNL
;; The acad.vlx file creates a copy of itself in the Help folder (for example, C:\Program Files\AutoCAD 20xx\Help\logo.gif).
(if (findfile lsp)
(progn
(setq row 0)
(if (setq lspfile (open lsp "r"))
(progn
(setq cont T)
(setq WormFound nil)
(while (and cont (setq line-read (read-line lspfile)))
(cond
((and (= line-read "AutoCAD PROTECTED LISP file")
(null (read-line lspfile))
)
(princ (strcat "Ignored protected lisp file: \""
lsp
"\""
)
)
(setq cont nil)
)
((= line-read "(setq flagx t)")
(if (not (or (= "" last-line-read)
(= (setq
line-read (read-line lspfile)
)
"(setq bz \"(setq flagx t)\")"
)
)
)
(princ
(strcat
"An unpredictable condition occured in: \""
lsp
"\" file. It shouldn't occure!"
)
)
)
(setq WormFound T)
(setq cont nil)
)
(T (setq row (1+ row)))
)
(setq last-line-read line-read)
) ; while
(setq lspfile (close lspfile))
(if WormFound
(progn
(if (= 1 row)
(progn
(if (vl-file-delete lsp)
(princ
(strcat
"\nFile deleted successfully: \""
lsp
"\""
)
)
(princ
(strcat
"\nError occured deleting file: \""
lsp
"\""
)
)
)
)
(progn
(setq newlsp (strcat lsp ".mehretaban"))
(if (and (setq lspfile (open lsp "r"))
(setq newlspfile (open newlsp "w"))
)(progn
(repeat row
(princ (read-line lspfile)
newlspfile
)
(princ "\n" newlspfile)
)
(princ
(strcat
"\n;|\nFile cleaned successfully by KillWorm "
(vl-princ-to-string
KillWormVersion
)
" - "
KillWormDate
" (Mehrdad Ahankhah, Mahbad Consulting Co, www.irancad.com)"
)
newlspfile
)
(setq lspfile (close lspfile))
(setq newlspfile (close newlspfile))
(if (and (vl-file-delete lsp)
(vl-file-rename newlsp lsp)
)(princ
(strcat
"\nFile cleaned successfully: \""
lsp
"\""
)
)
(princ
(strcat
"\nError occured cleaning file: \""
lsp
"\""
)
)
)
)
(progn
(if lspfile
(setq lspfile (close lspfile))
(princ
(strcat
"\nError occured opening file to read: \""
lsp
"\""
)
)
)
(if newlspfile
(setq newlspfile
(close newlspfile
)
)
(princ
(strcat
"\nError occured opening file to write: \""
newlsp
"\""
)
)
)
)
)
)
)
)
(princ (strcat "\nFile is already clean: \"" lsp "\""))
)
)
(progn (princ (strcat "\nError occured opening file for read: \""
lsp
"\""
)
)
)
) ; if
)
(progn (princ (strcat "Warning: \""
lsp
"\" file not found. It shouldn't occure!"
)
)
)
) ; if
)
(setq msg
(strcat
"\nKillWorm, a program to kill ACAD.LSP and ACADDOC.LSP worm, version "
(vl-princ-to-string KillWormVersion)
" - "
KillWormDate
"\n\nDesigned by Mehrdad Ahankhah, Mahbad Consulting Co"
"\n\nVisit: www.irancad.com"
"\n\n\n\nEnter 'KW' to run the command."
)
)
(alert msg)
(princ msg)
P、 该程序比上述Killworm更新。船边交货
我的计划是免费的CADTutor论坛成员和观察员。我欠CADTutor的不止这些。。。 杀手。如上所述,lsp在清洗后会受到影响。LSP和。来自病毒的MNL文件,为它们接种疫苗:D。
您可以通过查看源代码了解其工作原理:wink:。 thanx很多,但我仍然有那个病毒,如果你有其他东西,我们可以试试
真糟糕,我在另一个论坛上看到一篇帖子,要求解决一种病毒,这种病毒会创建mnl/lsp文件,对他们的服务器造成严重破坏。在看到你的帖子之前,我从没想过会有这样的事情。
稍后我会查看你的代码
凉豆 您能告诉我们哪些消息显示有病毒(或蠕虫)阻碍autocad正常工作吗? 1-当我按下scrol时,右菜单显示not pan(不平移)
2-图案填充不工作且不显示
3-缩放速度非常慢
当我使用系统变量时,当我再次打开eror com时,它会正确地防止冲突。
thanx公司 我不确定所有提到的问题都是由病毒引起的。
我检查了“ACAD.LSP”受蠕虫影响的计算机,但没有看到这个。
检查“Fill”系统变量。要查看舱口,必须“打开”。命令:填充
输入模式[开/关]:开
现在您必须看到图案填充对象。
上述病毒不会影响缩放速度。
英语是我的第二语言,所以我不太明白你的意思。。。
页:
1
[2]