home *** CD-ROM | disk | FTP | other *** search
- ;_____________________________________________________________________________
- ;
- ; File Functions
- ;_____________________________________________________________________________
- ;
- ; 2006 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
-
- Name "File Functions"
- OutFile "FileFunc.exe"
- Caption "$(^Name)"
- XPStyle on
- RequestExecutionLevel user
-
- !include "WinMessages.nsh"
- !include "FileFunc.nsh"
-
- Var INI
- Var HWND
- Var STATE
- Var FUNCTION
- Var LOCATE1
- Var LOCATE2
- Var GETSIZE1
- Var GETSIZE2
- Var GETSIZE3
- Var GETSIZE4
- Var GETSIZE5
- Var GETSIZE6
- Var DRIVESPACE1
- Var DRIVESPACE2
- Var GETDRIVES1
- Var GETTIME1
- Var GETTIME2
- Var GETFILEATTRIBUTES1
- Var GETFILEATTRIBUTES2
- Var GETFILEVERSION1
- Var GETOPTIONS1
- Var GETOPTIONS2
- Var GETROOT1
- Var GETPARENT1
- Var GETFILENAME1
- Var GETBASENAME1
- Var GETFILEEXT1
- Var BANNERTRIMPATH1
- Var BANNERTRIMPATH2
- Var DIRSTATE1
-
- Page Custom ShowCustom LeaveCustom
-
- Function ShowCustom
- InstallOptions::initDialog "$INI"
- Pop $hwnd
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1206
- EnableWindow $1 0
- SendMessage $1 ${WM_ENABLE} 1 0
- StrCpy $LOCATE1 $DOCUMENTS
- StrCpy $LOCATE2 '/L=FD /M=*.* /S=0B /G=1 /B=0'
- StrCpy $GETSIZE1 '$WINDIR'
- StrCpy $GETSIZE2 '/M=Explorer.exe /S=0K /G=0'
- StrCpy $GETSIZE3 '$PROGRAMFILES\Common Files'
- StrCpy $GETSIZE4 '/S=0M'
- StrCpy $GETSIZE5 '$WINDIR'
- StrCpy $GETSIZE6 '/G=0'
- StrCpy $DRIVESPACE1 'C:\'
- StrCpy $DRIVESPACE2 '/D=F /S=M'
- StrCpy $GETDRIVES1 'FDD+CDROM'
- StrCpy $GETTIME1 '$WINDIR\Explorer.exe'
- StrCpy $GETTIME2 'C'
- StrCpy $GETFILEATTRIBUTES1 'C:\IO.SYS'
- StrCpy $GETFILEATTRIBUTES2 'ALL'
- StrCpy $GETFILEVERSION1 '$WINDIR\Explorer.exe'
- StrCpy $GETOPTIONS1 '/SILENT=yes /INSTDIR="$PROGRAMFILES\Common Files"'
- StrCpy $GETOPTIONS2 '/INSTDIR='
- StrCpy $GETROOT1 'C:\path\file.dll'
- StrCpy $GETPARENT1 'C:\path\file.dll'
- StrCpy $GETFILENAME1 'C:\path\file.dll'
- StrCpy $GETBASENAME1 'C:\path\file.dll'
- StrCpy $GETFILEEXT1 'C:\path\file.dll'
- StrCpy $BANNERTRIMPATH1 'C:\Server\Documents\Terminal\license.htm'
- StrCpy $BANNERTRIMPATH2 '34A'
- StrCpy $DIRSTATE1 '$TEMP'
-
- GetDlgItem $1 $HWND 1203
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE1"
- GetDlgItem $1 $HWND 1205
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE2"
- InstallOptions::show
- Pop $0
- FunctionEnd
-
- Function LeaveCustom
- ReadINIStr $STATE $INI "Field 1" "State"
- ReadINIStr $R1 $INI "Field 2" "State"
- ReadINIStr $R2 $INI "Field 3" "State"
- ReadINIStr $R3 $INI "Field 4" "State"
- ReadINIStr $R4 $INI "Field 5" "State"
- ReadINIStr $0 $INI "Settings" "State"
- StrCmp $0 6 view
- StrCmp $0 0 Enter
- goto main
-
- view:
- StrCpy $0 '$$'
- StrCpy $1 'n'
- StrCpy $2 'r'
- StrCmp $R4 "LocateCallback" 0 +3
- StrCpy $R0 `Function LocateCallback$\r$\n MessageBox MB_OKCANCEL '$0$$R9 "path\name"=[$$R9]$0\$1$0$$R8 "path" =[$$R8]$0\$1$0$$R7 "name" =[$$R7]$0\$1$0$$R6 "size" =[$$R6]' IDOK +2$\r$\n StrCpy $$R0 StopLocate$\r$\n$\r$\n Push $$R0$\r$\nFunctionEnd`
- goto send
- StrCmp $R4 "GetDrivesCallback" 0 error
- StrCpy $R0 `Function GetDrivesCallback$\r$\n MessageBox MB_OKCANCEL '$0$$9 "drive letter"=[$$9]$0\$1$0$$8 "drive type" =[$$8]' IDOK +2$\r$\n StrCpy $$R0 StopGetDrives$\r$\n StrCpy $$R5 '$$R5$$9 [$$8 Drive]$$\$2$$\$1'$\r$\n$\r$\n Push $$R0$\r$\nFunctionEnd`
- goto send
-
- main:
- StrCmp $FUNCTION '' DefaultSend
- StrCmp $FUNCTION Locate 0 +4
- StrCpy $LOCATE1 $R2
- StrCpy $LOCATE2 $R3
- goto DefaultSend
- StrCmp $FUNCTION GetSize1 0 +4
- StrCpy $GETSIZE1 $R2
- StrCpy $GETSIZE2 $R3
- goto DefaultSend
- StrCmp $FUNCTION GetSize2 0 +4
- StrCpy $GETSIZE3 $R2
- StrCpy $GETSIZE4 $R3
- goto DefaultSend
- StrCmp $FUNCTION GetSize3 0 +4
- StrCpy $GETSIZE5 $R2
- StrCpy $GETSIZE6 $R3
- goto DefaultSend
- StrCmp $FUNCTION DriveSpace 0 +4
- StrCpy $DRIVESPACE1 $R1
- StrCpy $DRIVESPACE2 $R3
- goto DefaultSend
- StrCmp $FUNCTION GetDrives 0 +3
- StrCpy $GETDRIVES1 $R1
- goto DefaultSend
- StrCmp $FUNCTION GetTime 0 +4
- StrCpy $GETTIME1 $R1
- StrCpy $GETTIME2 $R3
- goto DefaultSend
- StrCmp $FUNCTION GetFileAttributes 0 +4
- StrCpy $GETFILEATTRIBUTES1 $R1
- StrCpy $GETFILEATTRIBUTES2 $R3
- goto DefaultSend
- StrCmp $FUNCTION GetFileVersion 0 +3
- StrCpy $GETFILEVERSION1 $R1
- goto DefaultSend
- StrCmp $FUNCTION GetOptions 0 +4
- StrCpy $GETOPTIONS1 $R1
- StrCpy $GETOPTIONS2 $R3
- goto DefaultSend
- StrCmp $FUNCTION GetRoot 0 +3
- StrCpy $GETROOT1 $R1
- goto DefaultSend
- StrCmp $FUNCTION GetParent 0 +3
- StrCpy $GETPARENT1 $R1
- goto DefaultSend
- StrCmp $FUNCTION GetFileName 0 +3
- StrCpy $GETFILENAME1 $R1
- goto DefaultSend
- StrCmp $FUNCTION GetBaseName 0 +3
- StrCpy $GETBASENAME1 $R1
- goto DefaultSend
- StrCmp $FUNCTION GetFileExt 0 +3
- StrCpy $GETFILEEXT1 $R1
- goto DefaultSend
- StrCmp $FUNCTION BannerTrimPath 0 +4
- StrCpy $BANNERTRIMPATH1 $R1
- StrCpy $BANNERTRIMPATH2 $R3
- goto DefaultSend
- StrCmp $FUNCTION DirState 0 +2
- StrCpy $DIRSTATE1 $R2
-
- DefaultSend:
- GetDlgItem $1 $HWND 1201
- EnableWindow $1 1
- ShowWindow $1 0
- SendMessage $1 ${WM_SETTEXT} 1 "STR:"
- GetDlgItem $1 $HWND 1202
- EnableWindow $1 1
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1203
- EnableWindow $1 1
- ShowWindow $1 0
- SendMessage $1 ${WM_SETTEXT} 1 "STR:"
- GetDlgItem $1 $HWND 1204
- EnableWindow $1 1
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1205
- EnableWindow $1 1
- GetDlgItem $1 $HWND 1206
- ShowWindow $1 0
- EnableWindow $1 0
- GetDlgItem $1 $HWND 1207
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1208
- SendMessage $1 ${WM_SETTEXT} 1 "STR:"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:"
- GetDlgItem $1 $HWND 1211
- SendMessage $1 ${WM_SETTEXT} 1 "STR:"
-
- ReadINIStr $0 $INI "Field 1" "State"
- StrCmp $0 " 1. Locate" 0 GetSize1Send
- StrCpy $FUNCTION Locate
- GetDlgItem $1 $HWND 1203
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE1"
- GetDlgItem $1 $HWND 1204
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$LOCATE2"
- GetDlgItem $1 $HWND 1206
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:LocateCallback"
- GetDlgItem $1 $HWND 1207
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Path"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
- GetDlgItem $1 $HWND 1211
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Function"
- abort
-
- GetSize1Send:
- StrCmp $0 " 2. GetSize (file)" 0 GetSize2Send
- StrCpy $FUNCTION 'GetSize1'
- GetDlgItem $1 $HWND 1203
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE1"
- GetDlgItem $1 $HWND 1204
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE2"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:File"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
- Abort
-
- GetSize2Send:
- StrCmp $0 " (directory)" 0 GetSize3Send
- StrCpy $FUNCTION 'GetSize2'
- GetDlgItem $1 $HWND 1203
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE3"
- GetDlgItem $1 $HWND 1204
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE4"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Directory"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
- Abort
-
- GetSize3Send:
- StrCmp $0 " (no size, no subdir)" 0 DriveSpaceSend
- StrCpy $FUNCTION 'GetSize3'
- GetDlgItem $1 $HWND 1203
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE5"
- GetDlgItem $1 $HWND 1204
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETSIZE6"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Directory"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
- Abort
-
- DriveSpaceSend:
- StrCmp $0 " 3. DriveSpace" 0 GetDrivesSend
- StrCpy $FUNCTION DriveSpace
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$DRIVESPACE1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- EnableWindow $1 0
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$DRIVESPACE2"
- GetDlgItem $1 $HWND 1206
- ShowWindow $1 0
- SendMessage $1 ${WM_SETTEXT} 1 "STR:"
- GetDlgItem $1 $HWND 1207
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Drive"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Options"
- abort
-
- GetDrivesSend:
- StrCmp $0 " 4. GetDrives (by type)" 0 GetDrives2Send
- StrCpy $FUNCTION GetDrives
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETDRIVES1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- EnableWindow $1 0
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1206
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:GetDrivesCallback"
- GetDlgItem $1 $HWND 1207
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
- GetDlgItem $1 $HWND 1211
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Function"
- abort
-
- GetDrives2Send:
- StrCmp $0 " (all by letter)" 0 GetTime1Send
- StrCpy $FUNCTION ''
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- EnableWindow $1 0
- SendMessage $1 ${WM_ENABLE} 1 0
- SendMessage $1 ${WM_SETTEXT} 1 "STR:ALL"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- EnableWindow $1 0
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1206
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:GetDrivesCallback"
- GetDlgItem $1 $HWND 1207
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
- GetDlgItem $1 $HWND 1211
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Function"
- abort
-
- GetTime1Send:
- StrCmp $0 " 5. GetTime (local time)" 0 GetTime2Send
- StrCpy $FUNCTION ''
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- EnableWindow $1 0
- SendMessage $1 ${WM_ENABLE} 1 0
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- EnableWindow $1 0
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- EnableWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:L"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
- Abort
-
- GetTime2Send:
- StrCmp $0 " (file time)" 0 GetFileAttributesSend
- StrCpy $FUNCTION GetTime
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETTIME1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETTIME2"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:File"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
- Abort
-
- GetFileAttributesSend:
- StrCmp $0 " 6. GetFileAttributes" 0 GetFileVersionSend
- StrCpy $FUNCTION GetFileAttributes
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEATTRIBUTES1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEATTRIBUTES2"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Path"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Attrib"
- Abort
-
- GetFileVersionSend:
- StrCmp $0 " 7. GetFileVersion" 0 GetCmdSend
- StrCpy $FUNCTION GetFileVersion
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEVERSION1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:File"
- Abort
-
- GetCmdSend:
- StrCmp $0 " 8. GetExeName" +3
- StrCmp $0 " 9. GetExePath" +2
- StrCmp $0 "10. GetParameters" 0 GetOptionsSend
- StrCpy $FUNCTION ''
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- Abort
-
- GetOptionsSend:
- StrCmp $0 "11. GetOptions" 0 GetRootSend
- StrCpy $FUNCTION GetOptions
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETOPTIONS1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- EnableWindow $1 0
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETOPTIONS2"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Parameters"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
- Abort
-
- GetRootSend:
- StrCmp $0 "12. GetRoot" 0 GetParentSend
- StrCpy $FUNCTION GetRoot
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETROOT1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:FullPath"
- Abort
-
- GetParentSend:
- StrCmp $0 "13. GetParent" 0 GetFileNameSend
- StrCpy $FUNCTION GetParent
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETPARENT1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:PathString"
- Abort
-
- GetFileNameSend:
- StrCmp $0 "14. GetFileName" 0 GetBaseNameSend
- StrCpy $FUNCTION GetFileName
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILENAME1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:PathString"
- Abort
-
- GetBaseNameSend:
- StrCmp $0 "15. GetBaseName" 0 GetFileExtSend
- StrCpy $FUNCTION GetBaseName
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETBASENAME1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:FileString"
- Abort
-
- GetFileExtSend:
- StrCmp $0 "16. GetFileExt" 0 BannerTrimPathSend
- StrCpy $FUNCTION GetFileExt
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$GETFILEEXT1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:FileString"
- Abort
-
- BannerTrimPathSend:
- StrCmp $0 "17. BannerTrimPath" 0 DirStateSend
- StrCpy $FUNCTION BannerTrimPath
- GetDlgItem $1 $HWND 1201
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$BANNERTRIMPATH1"
- GetDlgItem $1 $HWND 1202
- ShowWindow $1 1
- EnableWindow $1 0
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$BANNERTRIMPATH2"
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:PathString"
- GetDlgItem $1 $HWND 1210
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
- Abort
-
- DirStateSend:
- StrCmp $0 "18. DirState" 0 RefreshShellIconsSend
- StrCpy $FUNCTION DirState
- GetDlgItem $1 $HWND 1203
- ShowWindow $1 1
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$DIRSTATE1"
- GetDlgItem $1 $HWND 1204
- ShowWindow $1 1
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
- GetDlgItem $1 $HWND 1209
- SendMessage $1 ${WM_SETTEXT} 1 "STR:Directory"
- Abort
-
- RefreshShellIconsSend:
- StrCmp $0 "19. RefreshShellIcons" 0 Abort
- StrCpy $FUNCTION ''
- GetDlgItem $1 $HWND 1205
- ShowWindow $1 0
-
- Abort:
- Abort
-
- ;=Enter=
- Enter:
- StrCpy $R0 ''
- StrCpy $R5 ''
-
- StrCmp $STATE " 1. Locate" Locate
- StrCmp $STATE " 2. GetSize (file)" GetSize
- StrCmp $STATE " (directory)" GetSize
- StrCmp $STATE " (no size, no subdir)" GetSize
- StrCmp $STATE " 3. DriveSpace" DriveSpace
- StrCmp $STATE " 4. GetDrives (by type)" GetDrives
- StrCmp $STATE " (all by letter)" GetDrives
- StrCmp $STATE " 5. GetTime (local time)" GetTime
- StrCmp $STATE " (file time)" GetTime
- StrCmp $STATE " 6. GetFileAttributes" GetFileAttributes
- StrCmp $STATE " 7. GetFileVersion" GetFileVersion
- StrCmp $STATE " 8. GetExeName" GetExeName
- StrCmp $STATE " 9. GetExePath" GetExePath
- StrCmp $STATE "10. GetParameters" GetParameters
- StrCmp $STATE "11. GetOptions" GetOptions
- StrCmp $STATE "12. GetRoot" GetRoot
- StrCmp $STATE "13. GetParent" GetParent
- StrCmp $STATE "14. GetFileName" GetFileName
- StrCmp $STATE "15. GetBaseName" GetBaseName
- StrCmp $STATE "16. GetFileExt" GetFileExt
- StrCmp $STATE "17. BannerTrimPath" BannerTrimPath
- StrCmp $STATE "18. DirState" DirState
- StrCmp $STATE "19. RefreshShellIcons" RefreshShellIcons
- Abort
-
- Locate:
- ${Locate} "$R2" "$R3" "LocateCallback"
- IfErrors error
- StrCmp $R0 StopLocate 0 +3
- StrCpy $R0 'stopped'
- goto send
- StrCpy $R0 'done'
- goto send
-
- GetSize:
- ${GetSize} "$R2" "$R3" $0 $1 $2
- IfErrors error
- StrCpy $R0 "Size=$0$\r$\nFiles=$1$\r$\nFolders=$2"
- goto send
-
- DriveSpace:
- ${DriveSpace} "$R1" "$R3" $0
- IfErrors error
- StrCpy $R0 "$0"
- goto send
-
- GetDrives:
- ${GetDrives} "$R1" "GetDrivesCallback"
- StrCmp $R0 StopGetDrives 0 +3
- StrCpy $R0 '$R5stopped'
- goto send
- StrCpy $R0 '$R5done'
- goto send
-
- GetTime:
- ${GetTime} "$R1" "$R3" $0 $1 $2 $3 $4 $5 $6
- IfErrors error
- StrCpy $R0 'Date=$0/$1/$2 ($3)$\r$\nTime=$4:$5:$6'
- goto send
-
- GetFileAttributes:
- ${GetFileAttributes} "$R1" "$R3" $0
- IfErrors error
- StrCpy $R0 '$0'
- goto send
-
- GetFileVersion:
- ${GetFileVersion} "$R1" $0
- IfErrors error
- StrCpy $R0 '$0'
- goto send
-
- GetExeName:
- ${GetExeName} $0
- StrCpy $R0 '$0'
- goto send
-
- GetExePath:
- ${GetExePath} $0
- StrCpy $R0 '$0'
- goto send
-
- GetParameters:
- ${GetParameters} $0
- StrCpy $R0 '$0'
- StrCmp $R0 '' 0 send
- StrCpy $R0 'no parameters'
- goto send
-
- GetOptions:
- ${GetOptions} "$R1" "$R3" $0
- IfErrors error
- StrCpy $R0 '$0'
- goto send
-
- GetRoot:
- ${GetRoot} "$R1" $0
- StrCpy $R0 '$0'
- goto send
-
- GetParent:
- ${GetParent} "$R1" $0
- StrCpy $R0 '$0'
- goto send
-
- GetFileName:
- ${GetFileName} "$R1" $0
- StrCpy $R0 '$0'
- goto send
-
- GetBaseName:
- ${GetBaseName} "$R1" $0
- StrCpy $R0 '$0'
- goto send
-
- GetFileExt:
- ${GetFileExt} "$R1" $0
- StrCpy $R0 '$0'
- goto send
-
- BannerTrimPath:
- ${BannerTrimPath} "$R1" "$R3" $0
- StrCpy $R0 '$0'
- goto send
-
- DirState:
- ${DirState} "$R2" $0
- StrCpy $R0 '$0'
- goto send
-
- RefreshShellIcons:
- ${RefreshShellIcons}
- StrCpy $R0 'done'
- goto send
-
- error:
- StrCpy $R0 'error'
-
- send:
- GetDlgItem $1 $HWND 1208
- SendMessage $1 ${WM_SETTEXT} 1 "STR:$R0"
-
- abort
- FunctionEnd
-
- Function LocateCallback
- MessageBox MB_OKCANCEL '$$R9 "path\name"=[$R9]$\n$$R8 "path" =[$R8]$\n$$R7 "name" =[$R7]$\n$$R6 "size" =[$R6]' IDOK +2
- StrCpy $R0 StopLocate
-
- Push $R0
- FunctionEnd
-
- Function GetDrivesCallback
- MessageBox MB_OKCANCEL '$$9 "drive letter"=[$9]$\n$$8 "drive type" =[$8]' IDOK +2
- StrCpy $R0 StopGetDrives
- StrCpy $R5 '$R5$9 [$8 Drive]$\r$\n'
-
- Push $R0
- FunctionEnd
-
- Function .onInit
- InitPluginsDir
- GetTempFileName $INI $PLUGINSDIR
- File /oname=$INI "FileFunc.ini"
- FunctionEnd
-
- Page instfiles
-
- Section "Empty"
- SectionEnd
-