登入  |  English
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 原網站預計持續維運至 2021年底,網站內容基本上不會再更動。本網站由 Denny Huang 備份封存。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
討論區
Re:2010.02.07 專案平台與版本控制 課程討論串 (至2.21止) (1 位瀏覽者) (1) Guest
已經參與過工作坊的朋友們,請盡情地在此留下感想、建議、批評、指教,以作為我們日後改善的參考。對參加過的課程有問題的朋友,請在活動結束之後兩週內,在專屬的討論串發表問題,講師將會為各位解惑。超過兩週之後發表的問題將不再回覆,請見諒!
Go to bottom Favoured: 0
TOPIC: Re:2010.02.07 專案平台與版本控制 課程討論串 (至2.21止)
#419
Re:2010.02.07 專案平台與版本控制 課程討論串 (至2.21止) 2010/02/07 19:42  (9 Years, 9 Months ago) Karma: 0  
fp91gx wrote:
我想問

如何判別autorun.inf

檔案內容中所寫的要執行的程式

並刪除

這段程式碼可以提供給大家作學習嗎


您好,

判斷的程式皆在 KillVirus.py 中,如 0.80 版的 KillVirus.py
Code:


368                     if os.path.isfile(autorun_file):
369                         f = open(autorun_file, 'r')
370                         for line in f:
371                             item = line.split('=')[-1].rstrip()
375                             full_item = x.DriveLetter + ':\' + item
376                             if os.path.isfile(full_item):
377                                 flist.append(full_item)
378                         f.close()
379 
380                     # uniq flist
381                     flist = list(set(flist))



370行,為把 autorun.inf 中的每一行分別取出。
371行,把每一行 = (等號) 後面的字串取出。例如 open=vmhr.bat ,則 item 為 vmhr.bat
375行,則把隨身碟磁區加在 item 前,例如隨身碟是 E: ,則 full_item 為 E:\vmhr.bat

而移除的程式,寫在 KillVirus.py 中,例如 0.80 版的 KillVirus.py,
Code:


84                     win32api.SetFileAttributes(item, win32con.FILE_ATTRIBUTE_NORMAL)
85                     os.remove(item)



84行,把檔案的屬性 (attrib) 設為一般屬性,如此才可以刪除。
85行,則是把檔案刪除。
ant (User)
Junior Boarder
Posts: 8
graphgraph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
Go to top