|
Name "Inetc Recursive Dir Upload Test" |
|
OutFile "recursive.exe" |
|
RequestExecutionLevel user |
|
|
|
!include "MUI2.nsh" |
|
!insertmacro MUI_PAGE_INSTFILES |
|
!insertmacro MUI_LANGUAGE "English" |
|
!include "FileFunc.nsh" |
|
!insertmacro GetFileAttributes |
|
|
|
var url |
|
var path |
|
|
|
Function dirul |
|
|
|
Push $0 |
|
Push $1 |
|
Push $2 |
|
|
|
FindFirst $0 $1 "$path\*" |
|
loop: |
|
StrCmp $1 "" done |
|
${GetFileAttributes} "$path\$1" DIRECTORY $2 |
|
IntCmp $2 1 isdir |
|
retry: |
|
Inetc::put $url/$1 "$path\$1" /end |
|
Pop $2 |
|
DetailPrint "$2 $path\$1" |
|
StrCmp $2 "OK" cont |
|
MessageBox MB_YESNO "$path\$1 file upload failed. Retry?" IDYES retry |
|
Abort "terminated by user" |
|
Goto cont |
|
isdir: |
|
StrCmp $1 . cont |
|
StrCmp $1 .. cont |
|
Push $path |
|
Push $url |
|
StrCpy $path "$path\$1" |
|
StrCpy $url "$url/$1" |
|
Call dirul |
|
Pop $url |
|
Pop $path |
|
cont: |
|
FindNext $0 $1 |
|
Goto loop |
|
done: |
|
FindClose $0 |
|
|
|
Pop $2 |
|
Pop $1 |
|
Pop $0 |
|
|
|
FunctionEnd |
|
|
|
|
|
Section "Dummy Section" SecDummy |
|
|
|
SetDetailsView hide |
|
StrCpy $path "$EXEDIR" |
|
|
|
StrCpy $url ftp://takhir:pwd@localhost/put |
|
Call dirul |
|
SetDetailsView show |
|
|
|
SectionEnd |
|
|