;********************** ;* RoboTask Task file * ;* Do not edit! * ;********************** [Root] ActionAfterRun=INTEGER|0 Actions=FOLDER Automat=INTEGER|-1 CatID=INTEGER|1269303140 ContinueOnError=INTEGER|0 ExternalName=STRING|"Task405" Hide=INTEGER|0 ID=INTEGER|1290167819 Name=STRING|"Calc the folder size (with basic script)" Priority=INTEGER|3 RunOnClose=INTEGER|0 RunOnStartup=INTEGER|0 ToLog=INTEGER|3 [Actions] Action1=FOLDER Action10=FOLDER Action2=FOLDER Action3=FOLDER Action4=FOLDER Action5=FOLDER Action6=FOLDER Action7=FOLDER Action8=FOLDER Action9=FOLDER [Actions\Action1] ActionID=STRING|"A_DIALOG_BROWSEFOLDERS" Enabled=INTEGER|-1 Name=STRING|"Browse for Folders" Params=FOLDER [Actions\Action1\Params] caption=STRING|"Select Folder" default=STRING|"None" filter=STRING|"Text files|*.txt|All files|*.*|" variable=STRING|"FOLDER_TO_CALC" [Actions\Action10] ActionID=STRING|"A_VARIABLES_REMOVE" Enabled=INTEGER|-1 Name=STRING|"Remove variable ""FILECOUNT""" Params=FOLDER [Actions\Action10\Params] varname=STRING|"FILECOUNT" [Actions\Action2] ActionID=STRING|"A_FLOW_IF" Enabled=INTEGER|-1 Name=STRING|"If Then" Params=FOLDER [Actions\Action2\Params] case=STRING|"0" operator=STRING|"0" type=STRING|"0" value1=STRING|"{folder_to_calc}" value2=STRING|"none" [Actions\Action3] ActionID=STRING|"A_DIALOG_MESSAGE" Enabled=INTEGER|-1 Name=STRING|"Show ""You haven't chosen the folder""" Params=FOLDER [Actions\Action3\Params] icon=STRING|"1" msg0=STRING|"You haven't chosen the folder" msgcount=STRING|"1" playsound=STRING|"0" showmessage=STRING|"1" [Actions\Action4] ActionID=STRING|"A_FLOW_ELSE" Enabled=INTEGER|-1 Name=STRING|"Else" [Actions\Action5] ActionID=STRING|"BASIC_SCRIPT" Enabled=INTEGER|-1 Name=STRING|"Basic Script" Params=FOLDER [Actions\Action5\Params] line00000=STRING|"Public Const MAX_PATH = 260" line00001=STRING|"Public Const FILE_ATTRIBUTE_DIRECTORY = &H10" line00003=STRING|"Public Type FILETIME" line00004=STRING|" dwLowDateTime As Long" line00005=STRING|" dwHighDateTime As Long" line00006=STRING|"End Type" line00008=STRING|"Public Type WIN32_FIND_DATA" line00009=STRING|" dwFileAttributes As Long" line00010=STRING|" ftCreationTime As FILETIME" line00011=STRING|" ftLastAccessTime As FILETIME" line00012=STRING|" ftLastWriteTime As FILETIME" line00013=STRING|" nFileSizeHigh As Long" line00014=STRING|" nFileSizeLow As Long" line00015=STRING|" dwReserved0 As Long" line00016=STRING|" dwReserved1 As Long" line00017=STRING|" cFileName As String * MAX_PATH" line00018=STRING|" cAlternate As String * 14" line00019=STRING|"End Type" line00021=STRING|"Public Declare Function FindClose Lib ""kernel32"" Alias ""FindClose"" (ByVal hFindFile As Long) As Long" line00022=STRING|"Public Declare Function FindFirstFile Lib ""kernel32"" Alias ""FindFirstFileA"" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long" line00023=STRING|"Public Declare Function FindNextFile Lib ""kernel32"" Alias ""FindNextFileA"" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long" line00025=STRING|"Dim FileCount As Long" line00026=STRING|"Dim TotalSize As Double" line00028=STRING|"Sub CalcFolder(ByVal AFolder As String)" line00029=STRING|" Dim sh As Long" line00030=STRING|" Dim FindData As WIN32_FIND_DATA" line00031=STRING|" Dim res As Long" line00032=STRING|" Dim FileName As String" line00034=STRING|" sh = FindFirstFile(AFolder+""\*.*"", FindData)" line00035=STRING|" If sh>=0 Then" line00036=STRING|" res = 1" line00037=STRING|" While res>0" line00039=STRING|" FileName = Left(FindData.cFileName, InStr(FindData.cFileName,Chr(0))-1) 'because FindData.cFileName always containt 260 chars" line00041=STRING|" If (FindData.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY) = 0 Then 'file" line00042=STRING|" FileCount = FileCount + 1" line00043=STRING|" TotalSize = TotalSize + FindData.nFileSizeLow" line00044=STRING|" Else 'directory" line00045=STRING|" If FileName <> ""."" And FileName <> "".."" Then ' !!!important!!! skip ""."" and "".."" pseudofolders" line00046=STRING|" CalcFolder(AFolder + ""\"" + FileName)" line00047=STRING|" End If" line00048=STRING|" End If" line00049=STRING|" res = FindNextFile(sh,FindData)" line00050=STRING|" Wend" line00051=STRING|" FindClose(sh)" line00052=STRING|" End If" line00053=STRING|"End Sub" line00055=STRING|"Sub Main" line00056=STRING|" Dim s As String" line00057=STRING|" FileCount=0" line00058=STRING|" TotalSize=0" line00059=STRING|" s = RoboTaskApp.ExpandText(""{Folder_To_Calc}"")" line00060=STRING|" CalcFolder(s)" line00061=STRING|" RoboTaskApp.SetUserVariable(""FileCount"", Str(FileCount))" line00062=STRING|" RoboTaskApp.SetUserVariable(""TotalSize"", Str(TotalSize))" line00063=STRING|"End Sub" linecount=STRING|"64" source=STRING|"0" [Actions\Action6] ActionID=STRING|"A_DIALOG_MESSAGE" Enabled=INTEGER|-1 Name=STRING|"Show ""Folder ""{Folder_To_Calc}"" contains """ Params=FOLDER [Actions\Action6\Params] icon=STRING|"1" msg0=STRING|"Folder ""{Folder_To_Calc}"" contains " msg1=STRING|"{FileCount} files" msg2=STRING|"{TotalSize} bytes" msgcount=STRING|"3" playsound=STRING|"0" showmessage=STRING|"1" [Actions\Action7] ActionID=STRING|"A_FLOW_ENDIF" Enabled=INTEGER|-1 Name=STRING|"End If" [Actions\Action8] ActionID=STRING|"A_VARIABLES_REMOVE" Enabled=INTEGER|-1 Name=STRING|"Remove variable ""FOLDER_TO_CALC""" Params=FOLDER [Actions\Action8\Params] varname=STRING|"FOLDER_TO_CALC" [Actions\Action9] ActionID=STRING|"A_VARIABLES_REMOVE" Enabled=INTEGER|-1 Name=STRING|"Remove variable ""TOTALSIZE""" Params=FOLDER [Actions\Action9\Params] varname=STRING|"TOTALSIZE"