可以指定文件和文件夹,支持XP,Vista,Win7.
获取管理员权限 UDF:
Func _DirAcsece($MoveFile)
$Attrib = FileGetAttrib($MoveFile)
If StringInStr($Attrib, "D") Then
If @OSVersion = "WIN_XP" Then
RunWait(@ComSpec & ' /c echo y|Cacls "' & $MoveFile & '" /c /t /p administrators:F', @ScriptDir, @SW_HIDE)
Else
RunWait(@ComSpec & ' /c takeown /f "' & $MoveFile & '" /r /d y && icacls "' & $MoveFile & '" /grant administrators:F /t', @ScriptDir, @SW_HIDE)
EndIf
Else
If @OSVersion = "WIN_XP" Then
RunWait(@ComSpec & ' /c echo y|Cacls "' & $MoveFile & '" /c /t /p administrators:F', @ScriptDir, @SW_HIDE)
Else
RunWait(@ComSpec & ' /c takeown /f "' & $MoveFile & '" && icacls "' & $MoveFile & '" /grant administrators:F', @ScriptDir, @SW_HIDE)
EndIf
EndIf
EndFunc ;==>_DirAcsece
用法:
_DirAcsece("C:\System Volume Information")
利用获取管理员权限的UDF和DOS命令实现“删除无法删除的文件,或者文件夹”
可以删除普通的文件,文件夹,也可以删除特殊文件夹,无法访问的文件,文件夹.
只有在使用的文件无法删除.
删除Temporary Internet Files文件夹:
$ietemp = "C:\Documents and Settings\xp\Local Settings\Temporary Internet Files"
_DirAcsece($ietemp)
RunWait(@ComSpec & ' /c RD /S /Q "' & $ietemp & '."', '', @SW_HIDE)
删除autorun.inf文件夹:
_DirAcsece("C:\autorun.inf")
RunWait(@ComSpec & ' /c RD /S /Q "' & "C:\autorun.inf" & '."', '', @SW_HIDE)
删除System Volume Information文件夹:
_DirAcsece("C:\System Volume Information")
RunWait(@ComSpec & ' /c RD /S /Q "' & "C:\System Volume Information" & '."', '', @SW_HIDE)
删除文件:
_DirAcsece(@DesktopDir & "\a.txt")
RunWait(@ComSpec & ' /c DEL /F /A /Q "' & @DesktopDir & '\a.txt', '', @SW_HIDE)