DirCopy(@MyDocumentsDir, "C:\Backups\MyDocs", 1) Function Reference DirCreate Tạo một đường dẫn, thư mục mới DirCreate ( "path" ) Parameters path đường dẫn tới thư mục Return Value Success: Returns 1. Failure: Returns 0 nếu có bất kì lỗi nào Remarks hàm sẽ tạo tất cả các thư mục mẹ chứa thư mục yêu cài nếu chưa có Related DirRemove, FileCopy Example DirCreate("C:\Test1\Folder1\Folder2") Function Reference DirGetSize Trả lại kích thước của một thư mục DirGetSize ( "path" [, flag] ) Parameters path đường dẫn tới thư mục flag 0 = (mặc định) 1 = trả lại 1 mảng (xem ở dưới) 2 = ko lấy kích thước của các thư mục con Return Value Success: trả lại kích thức của thư mục (một số >=0 tính = byte) Failure: trả lại -1 và đặt @error = 1 nếu đường dẫn ko tồn tại Remarks script sẽ dừng lại trong quá trình thực hiện hàm flag có thể kết hợp lại, vd flag 3 = flag 2 + flag 1 nếu flag có sự kết hợp của 1 thì mảng trả lại sẽ đc định dạng như sau $array[0] = kích thước $array[1] = tổng số file $array[2] = tổng số thư mục Related None. Example $size = DirGetSize(@HomeDrive) Msgbox(0,"","Size(MegaBytes):" & Round($size / 1024 / 1024)) $size = DirGetSize(@WindowsDir, 2) Msgbox(0,"","Size(MegaBytes):" & Round($size / 1024 / 1024)) $timer = TimerInit() $size = DirGetSize("\\10.0.0.1\h$",1) $diff = Round(TimerDiff($timer) / 1000) ; time in seconds If IsArray($size) Then Msgbox(0,"DirGetSize-Info","Size(Bytes):" & $size[0] & @LF _ & "Files:" & $size[1] & @LF & "Dirs:" & $size[2] & @LF _ & "TimeDiff(Sec):" & $diff) EndIf Function Reference DirMove Di chuyển thư mục (tất cả file và thư mục con) DirMove ( "source dir", "dest dir" [, flag] ) Parameters source dir thư mục cần di chuyển dest dir dích tới flag 0 = (default) ko ghi đè 1 = ghi đè nếu trùng tên Return Value Success: Returns 1. Failure: Returns 0 nếu có bất kì lỗi gì Remarks hàm sẽ copy thư mục nguồn tới đích song xuôi rồi mới xóa thư mục nguồn (nếu lỗi thì ko seo :D) nếu thư mục đích đã tồn tại và flag=1 thì các thư mục con và file ở thư mục gốc sẽ được ghi đè vào bên trong thư mục đích (nghĩa là ko xóa thư mục đích đã tồn tại đó đi mà copy đè các file và thư mục con vào, các file và thư mục con trùng tên sẽ bị ghi đè, các file và thư mục con ko trùng tên vẫn còn) bởi vì autoit ko có hàm "DirRename" nên ta sử dụng DirMove để thay đổi tên thư mục Related DirRemove, FileMove Example DirMove(@MyDocumentsDir, "C:\Backups\MyDocs") Function Reference DirRemove Xóa thư mục DirRemove ( "path" [, recurse] ) Parameters path thư mục cần xóa chứ cái gì ở đây recurse 0 = (mặc định) ko xóa các file và thư mục con (? thế thì xóa cái gì mình test thử rồi nó chẳng làm gì cả :|) 1 = xóa tất cả (dùng cái này này, giống như lệnh "DelTree" trong DOS) Return Value Success: Returns 1. Failure: Returns 0 nếu có bất kì lỗi nào, hoặc thư mục ko tồn tại Remarks một số thuộc tính của thư mục có thể ko cho phép xóa thư mục Related DirCreate, FileRecycle Example ; Delete C:\Test1 and all subdirs and files DirRemove("C:\Test1", 1) Function Reference DriveGetDrive tìm tất cả ổ đĩa theo yêu cầu DriveGetDrive ( "type" ) Parameters type kiểu: "ALL", "CDROM", "REMOVABLE", "FIXED", "NETWORK", "RAMDISK", "UNKNOWN" Return Value Success: trả lại 1 mảng các ổ đĩa (vd "C:") tìm thấy $array[0] là số lượng các ổ đĩa tìm thấy Failure: trả lại "" và set @error = 1. Remarks None. Related DriveGetFileSystem, DriveGetLabel, DriveGetSerial, DriveGetType, DriveSetLabel, DriveSpaceFree, DriveSpaceTotal, DriveStatus Example $var = DriveGetDrive( "all" ) If NOT @error Then MsgBox(4096,"", "Found " & $var[0] & " drives") For $i = 1 to $var[0] MsgBox(4096,"Drive " & $i, $var[$i]) Next EndIf . hàm flag có thể kết hợp lại, vd flag 3 = flag 2 + flag 1 nếu flag có sự kết hợp c a 1 thì mảng trả lại sẽ đc định dạng như sau $array[0] = kích thước $array[1] = tổng số file $array[2]. DriveGetFileSystem, DriveGetLabel, DriveGetSerial, DriveGetType, DriveSetLabel, DriveSpaceFree, DriveSpaceTotal, DriveStatus Example $var = DriveGetDrive( "all" ) If NOT @error. Msgbox(0,"DirGetSize-Info","Size(Bytes):" & $size[0] & @LF _ & "Files:" & $size[1] & @LF & "Dirs:" & $size[2] & @LF _ & "TimeDiff(Sec):" & $diff) EndIf