天天看點

簡單U盤修複工具(SURT).hta - xublogs

名稱:簡單U盤修複工具(SURT).hta

前言:近段時間發現同學U盤出問題的頗多,每次都拿到我這來修複。其實也沒什麼大問題,隻是中毒了,U盤根目錄下的所有東西都被改成了“隐藏+系統+隻讀”屬性,自己沒辦法去掉才來找我。每次都用attrib指令改,改得多了自然就煩了,于是做了鄙作,還望莫笑。

功能:可将U盤根目錄下的檔案、檔案夾加上或去除“隐藏+系統+隻讀”屬性,并具删除autorun.inf檔案以避免病毒随磁盤的打開而自動運作的功能,算是一個簡單的U盤修複工具,希望能給您提供些許幫助。

圖:

代碼如下: 

<html>

<head>

<title>Simple U-disk Repair Tool</title>

<style>

body,button {

color:#666666;

background-color:#cccccc;

font-size:16px;

}

</style>

<HTA:APPLICATION

ID="Simple U-disk Repair Tool"

APPLICATIONNAME="Simple U-disk Repair Tool"

SCROLL="no"

SINGLEINSTANCE="yes"

WINDOWSTATE="normal"

ShowInTaskBar="yes"

MaximizeButton="no"

MinimizeButton="no"

SCROLL="no"

NAVIGABLE="yes"

BORDER="thin"

ICON="%SystemRoot%/system32/cleanmgr.exe"

>

</head>

<SCRIPT Language="VBScript">

On Error Resume Next

window.resizeTo 360,230

ileft=(window.screen.width-360)/2

itop=(window.screen.height-230)/2

window.moveTo ileft,itop

\'動态顯示盤符

Sub Window_Onload

Dim fso, d, dc

Set fso = CreateObject("Scripting.FileSystemObject")

Set dc = fso.Drives

For Each d in dc

Set objOption = Document.createElement("OPTION")

objOption.Text = d.DriveLetter & ":"

objOption.Value = d.DriveLetter & ":"

DriveList.Add(objOption)

Next

End Sub

Dim nAttr

\'傳回一個 Folder 對象,表示指定驅動器的根檔案夾。

Function ShowRootFolder(drvspec)

Dim fso, f

Set fso = CreateObject("Scripting.FileSystemObject")

Set f = fso.GetDrive(drvspec)

ShowRootFolder = f.RootFolder

End Function

\'操作檔案夾

Function ShowFolderList(folderspec,nAttr)

Dim fso, f, f1, fc, s

Set fso = CreateObject("Scripting.FileSystemObject")

Set f = fso.GetFolder(ShowRootFolder(folderspec))

Set fc = f.SubFolders

For Each f1 in fc

f1.attributes=nAttr

Next

End Function

\'操作檔案

Function ShowFileList(folderspec,nAttr)

Dim fso, f, f1, fc, s

Set fso = CreateObject("Scripting.FileSystemObject")

Set f = fso.GetFolder(ShowRootFolder(folderspec))

Set fc = f.Files

For Each f1 in fc

f1.attributes=nAttr

Next

End Function

Sub RunScript

If RA_SHOW(0).Checked Then

nAttr=RA_SHOW(0).value

ElseIf RA_SHOW(1).Checked Then

nAttr=RA_SHOW(1).value

End If

Set fso = CreateObject("Scripting.FileSystemObject")

Set d = fso.GetDrive(DriveList.Value)

If d.DriveType=1 Then

If CB_DELAUTO.Checked Then

If (fso.FileExists(d & "/autorun.inf")) Then

Set MyFile = fso.GetFile(d & "/autorun.inf") \'Delete file

MyFile.Delete(true)

End If

End If

Call ShowFolderList(d,nAttr)

Call ShowFileList(d,nAttr)

If vbOK=MsgBox ("操作成功!現在檢視效果?",vbOKCancel+vbInformation,_

"Simple U-disk Repair Tool") Then

expldrv="Explorer.exe /e," & DriveList.Value

set ws=CreateObject("WScript.Shell")

ws.run expldrv

End If

Else

If vbYes=MsgBox ("此驅動器非可移動磁盤,如遇屬性無法更改将出錯!是否繼續?",_

vbYesNo+vbQuestion,"Simple U-disk Repair Tool") Then

If CB_DELAUTO.Checked Then

If (fso.FileExists(d & "/autorun.inf")) Then

Set MyFile = fso.GetFile(d & "/autorun.inf") \'Delete file

MyFile.Delete(true)

End If

End If

Call ShowFolderList(d,nAttr)

Call ShowFileList(d,nAttr)

If vbOK=MsgBox ("操作成功!現在檢視效果?",vbOKCancel+vbInformation,_

"Simple U-disk Repair Tool") Then

expldrv="Explorer.exe /e," & DriveList.Value

set ws=CreateObject("WScript.Shell")

ws.run expldrv

End If

End If

End If

End Sub

</SCRIPT>

<body>

<h2 align="center">簡單U盤修複工具(SURT)</h2>

(1/3)請選擇需要操作可移動磁盤:

<select size="1" name="DriveList">

</select>

<br />

(2/3)

<input type="radio" name="RA_SHOW" value="0" checked>全部顯示

<input type="radio" name="RA_SHOW" value="7">全部隐藏

<br />

(3/3)

<input type="checkbox" name="CB_DELAUTO" value="1" checked>删除"autorun.inf"檔案

<br />

<p align="center">

<button onClick="RunScript" accesskey=O>确定(<u>O</u>)</button>

<button onClick="self.close()" accesskey=Q>退出(<u>Q</u>)</button>

<br />© <a href="mailto:tunhsiaATgmail.com">Tunhsia</a>

</p>

</body>

</html>