From 516667fc1bddbe39316c3ceed9f68e42a89a770b Mon Sep 17 00:00:00 2001
From: joostverburg Each field section has the heading "Field #" where # must be sequential numbers from 1 to
@@ -217,7 +216,8 @@ NumFields. Each Field section can contain the following values:State
(output)
This is not something you have to supply yourself but is set by
-InstallOptions, before calling your custom page validation function, to the field
-number of the custom Button control (or other control having the Notify flag) the
-user pressed, if any.
+InstallOptions, before calling your custom page validation function, to the field number of the
+custom Button control (or other control having the Notify flag) the user pressed, if any.
Type of control to be created. Valid values are "Label",
"Text", "Password", "Combobox", "DropList", "Listbox",
"CheckBox", "RadioButton", "FileRequest", "DirRequest"
-"Icon", "Bitmap", "GroupBox", "Link" or "Button".
+A "Button" control displays a push button that your NSIS script can act on when pressed.
+See the "NOTIFY" flag for more information.
+"Icon", "Bitmap", "GroupBox", "Link" or
+"Button".
A "Label" is used to display static text. (i.e. a caption for a textbox)
A "Text" and "Password" accept text input from the user. "Password"
@@ -237,8 +237,8 @@ A "Bitmap" control displays a bitmap.
A "GroupBox" control displays a frame to group controls.
A "Link" control displays a static hot text, when the user click the control the contents
of State (e.g. http://...) will be executed using ShellExecute
-A "Button" control displays a push button that your NSIS script can act on
-when pressed. See the "NOTIFY" flag for more information.
Text
@@ -455,10 +455,9 @@ box.
NOWORDWRAP
-Used by "Text" controls with multiple-line. Disables the
-word-wrap that occurs when long lines are entered. Long lines instead scroll off to the
-side. Specifying the HSCROLL flag also has this effect.
-
+Used by "Text" controls with multiple-line. Disables the word-wrap
+that occurs when long lines are entered. Long lines instead scroll off to the side. Specifying the
+HSCROLL flag also has this effect.
HSCROLL
@@ -478,12 +477,11 @@ text in the edit control, but allow the user to select and copy the text.
@@ -672,10 +670,12 @@ following values:NOTIFY
Used by "Button", "CheckBox" and "RadioButton"
-controls. Causes InstallOptions to call your NSIS custom page validation/leave function
-whenever the button is pressed. Your validation/leave function can read the "State"
-value from the "Settings" section to determine which custom button has been
-pressed, if any, and perform some appropriate action followed by an Abort instruction
-(to tell NSIS to return to the page). The Contrib\InstallOptions folder contains an
-example script showing how this might be used.
+controls. Causes InstallOptions to call your NSIS custom page validation/leave function whenever
+the button is pressed. Your validation/leave function can read the "State" value from the
+"Settings" section to determine which custom button has been pressed, if any, and perform
+some appropriate action followed by an Abort instruction (to tell NSIS to return to the page). The
+Contrib\InstallOptions folder contains an example script showing how this might be used.
If you want to check the user input immediately, for example, to display a warning when the input is invalid, you should check whether the user has pressed the Back or Next button.
-ReserveFile
-It you are using solid BZIP2 compression and your .onInit and Page functions are not above all -other sections/functions with File commands, use ReserveFile on the top of your script to put the -DLL/INI files first in the data block, which will make your installer start faster:
+If you are using BZIP2 (solid) compression, it's important that files which are being extracted +in init- or page functions function are located before other files in the data block, because this +will make your installer faster.
+If there are File commands in your sections or functions above the init- or page functions, add +ReserveFile commands above your sections and functions:
ReserveFile "test.ini" ReserveFile "${NSISDIR}\Plugins\InstallOptions.dll" diff --git a/Contrib/Modern UI/Readme.html b/Contrib/Modern UI/Readme.html index a8aab00e..138494f1 100644 --- a/Contrib/Modern UI/Readme.html +++ b/Contrib/Modern UI/Readme.html @@ -452,7 +452,6 @@ Variable in which to store the selected folder.
Does not disable the Next button when a folder is invalid but allows you to use GetInstDirError in the leave function to handle an invalid folder. -
Start Menu Folder Page Settings
Put the code to write the shortcuts (using CreateShortcut) between the MUI_STARTMENU_WRITE_BEGIN @@ -633,9 +632,9 @@ language stored in the registry will be selected by default.
6. Reserve files
-If you are using BZIP2 (solid) compression, it's important that files which are being extracted -in init- or page functions function are located before other files in the data block, because this -will make your installer faster.
+If you are using solid compression (by default, solid compression is enabled for BZip2 and +LZMA), it's important that files which are being extracted in init- or page functions function are +located before other files in the data block, because this will make your installer faster.
If there are File commands in your sections or functions above the init- or page functions, add the reserve file macros above your sections and functions.
diff --git a/Contrib/VPatch/Readme.html b/Contrib/VPatch/Readme.html index 6423b0b9..372683a6 100644 --- a/Contrib/VPatch/Readme.html +++ b/Contrib/VPatch/Readme.html @@ -1,138 +1,131 @@ - - + + -VPatch 2 - - - + - - -- - \ No newline at end of file +-
+ + + - -
- - -- VPatch 2
- - -Introduction
-VPatch allows to create a patch file to update previous versions of -your software. The GenPat utitily generates the patch file. The plug-in can use the -patch to update a file. Using a patch, you can reduce the download size of your -updates, because only the differences between the files are included in the patch -file.
-How to use
-Generate the patch file
-Make sure you have the source file (original version) and the target file (version - to update to). For example, DATA.DTA (currently on user system) and DATA_20.DTA - (version 2.0 of this data file). Now call the command line tool GenPat.exe:
-GENPAT data.dta data_20.dta data.pat-Now, the patch will be generated, this will take some time.
-Using the /B=(BlockSize) parameter of the GenPat utility (put it after -the filenames), you can use a different block size. A smaller block size may result in -a smaller patch, but the generation will take more time (the default blocksize is 64).
-Update the file in your installer
-Use the VPatch plug-in to update a file using a patch file:
-vpatch::vpatchfile "pathfile.pat" "source.file" "new.file"-The result of the patch operating will be added to the stack and can -be one of the following texts:
++ -VPatch 2
++Introduction
+VPatch allows to create a patch file to update previous versions of your software. The GenPat +utitily generates the patch file. The plug-in can use the patch to update a file. Using a patch, +you can reduce the download size of your updates, because only the differences between the files +are included in the patch file.
+How to use
+Generate the patch file
+Make sure you have the source file (original version) and the target file (version to update +to). For example, DATA.DTA (currently on user system) and DATA_20.DTA (version 2.0 of this data +file). Now call the command line tool GenPat.exe:
++GENPAT data.dta data_20.dta data.pat ++Now, the patch will be generated, this will take some time.
+Using the /B=(BlockSize) parameter of the GenPat utility (put it after the filenames), you can +use a different block size. A smaller block size may result in a smaller patch, but the generation +will take more time (the default blocksize is 64).
+Update the file during installation
+Use the VPatch plug-in to update a file using a patch file:
++vpatch::vpatchfile "pathfile.pat" "source.file" "new.file" ++The result of the patch operating will be added to the stack and can be one of the following +texts:
-
- OK
- OK, new version already installed
@@ -140,53 +133,53 @@ be one of the following texts:- Patch data is invalid or corrupt
- No suitable patches were found
Check example.nsi for an example.
-Multiple patches in one file
-GenPat appends a patch to the file you specified. If there is already a patch -for the same orginal file in the patch file, the patch will be replaced. For example, if you want -to be able to upgrade version 1 and 2 to version 3, you can put a 1 > 3 and 2 > 3 patch in one -file.
-You can also put patches for different files in one patch file, for example, a -patch from file A version 1 to file A version 2 and a patch from file B version 1 to -file B version 2. Just call the plug-in multiple times with the same patch file. It -will automatically select the right patch (based on the file CRC).
-Source code
-NSIS plug-in (C++)
-The source of the NSIS plug-in that applies patches can be found in the -Source\Plugin folder.
-Patch Generator (Delphi)
-The most interesting part of VPatch, the actual patch generation algoritm, -can be found in Source\GenPat\PatchGenerator.pas. The header of that file contains a brief -explanation of the algoritm as well.
-User interface (Delphi)
-A user interface is included as well, which you will have to build yourself -because the GUI executable was too large to include. Besides Borland Delphi 6 or higher -(you can use the freely available Personal edition), you will also need to install the -VirtualTreeView component by Mike Lischke.
-Version history
+Check example.nsi for an example.
+Multiple patches in one file
+GenPat appends a patch to the file you specified. If there is already a patch for the same +orginal file in the patch file, the patch will be replaced. For example, if you want to be able to +upgrade version 1 and 2 to version 3, you can put a 1 > 3 and 2 > 3 patch in one file.
+You can also put patches for different files in one patch file, for example, a patch from file A +version 1 to file A version 2 and a patch from file B version 1 to file B version 2. Just call the +plug-in multiple times with the same patch file. It will automatically select the right patch +(based on the file CRC).
+Source code
+NSIS plug-in (C++)
+The source of the NSIS plug-in that applies patches can be found in the Source\Plugin +folder.
+Patch Generator (Delphi)
+The most interesting part of VPatch, the actual patch generation algoritm, can be found in +Source\GenPat\PatchGenerator.pas. The header of that file contains a brief explanation of the +algoritm as well.
+User interface (Delphi)
+A user interface is included as well, which you will have to build yourself because the GUI +executable was too large to include. Besides Borland Delphi 6 or higher (you can use the freely +available Personal edition), you will also need to install the VirtualTreeView component by Mike Lischke.
+Version history
-
- 2.0 final
--
- Cleaned up source code for the patch generator, which is now included (this code is -written in Borland Delphi 6 and compiles with the freely available Personal edition).
+- Cleaned up source code for the patch generator, which is now included (this code is written in +Borland Delphi 6 and compiles with the freely available Personal edition).
- 2.0 beta 2 +
- 2.0 beta 2
-
- All new algorithm used in the patch generator: much faster (up to 90%) while using -smaller block sizes (higher compression)
+- All new algorithm used in the patch generator: much faster (up to 90%) while using smaller +block sizes (higher compression)
- Created a NSIS 2 plugin
- Works with small files
- Replaces existing patch in file if original file CRC is identical
Credits
-Written by Koen van de Sande
+Credits
+Written by Koen van de Sande
-
C plug-in by Edgewize
New documentation and example by Joost VerburgLicense
-Copyright (C) 2001-2003 Koen van de Sande +License
++Copyright (C) 2001-2003 Koen van de Sande This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -203,13 +196,10 @@ it freely, subject to the following restrictions: 2. Altered versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any distribution. --