home *** CD-ROM | disk | FTP | other *** search
- ; PatchLib v3.0
- ; =============
- ;
- ; Library with macro for use with VPatch (DLL version) in NSIS 2.0.5+
- ; Created by Koen van de Sande
-
- !include LogicLib.nsh
-
- !macro VPatchFile PATCHDATA SOURCEFILE TEMPFILE
-
- Push $1
- Push $2
- Push $3
- Push $4
-
- Push ${SOURCEFILE}
- Push ${TEMPFILE}
-
- Pop $2 # temp file
- Pop $3 # source file
-
- InitPluginsDir
- GetTempFileName $1 $PLUGINSDIR
- File /oname=$1 ${PATCHDATA}
-
- vpatch::vpatchfile $1 $3 $2
- Pop $4
- DetailPrint $4
-
- StrCpy $4 $4 2
- ${Unless} $4 == "OK"
- SetErrors
- ${EndIf}
-
- ${If} ${FileExists} $2
- Delete $3
- Rename /REBOOTOK $2 $3
- ${EndIf}
-
- Delete $1
-
- Pop $4
- Pop $3
- Pop $2
- Pop $1
-
- !macroend
-