* PageEx - every page can be used everywhere and as many times as needed

* DirVar - easy way to add another dir page
* default strings in the language file (Page directory is enough, no need for DirText)
* strings from the language file are now LangStrings that can be used in the script
* no more /LANG - one string for all languages
* any lang strings can be used everywhere, installer or uninstaller (no un.)
* no more unprocessed strings - variables can be used almost everywhere (except in licenseData and InstallDirRegKey)
* DirText parm for browse dialog text
* SetBkColor -> SetCtlColors - can now set text color too
* fixed SetOutPath and File /r bug
* fixed File /a /oname bug
* added $_CLICK for pages
* added quotes support in lang files (patch #752620)
* extraction progress
* separate RTL dialogs for RTL langs (improved RTL too)
* InstallOptions RTL
* StartMenu RTL
* fixed RegDLL?
* added IfSilent and SetSilent (SetSilent only works from .onInit)
* fixed verify window (it never showed) (bug #792494)
* fixed ifnewer readonly file problem (patch #783782)
* fixed wininit.ini manipulation when there is another section after [rename]
* fixed some ClearType issues
* fixed a minor bug in the resource editor
* fixed !ifdef/!endif stuff, rewritten
* lots of code and comments clean ups
* got rid of some useless exceptions handling and STL classes (still much more to go)
* lots of optimizations, of course ;)
* updated system.dll with support for GUID, WCHAR, and fast VTable calling (i.e. COM ready)
* minor bug fixes


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@2823 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2003-09-04 18:25:57 +00:00
parent bb8879b7ae
commit 74ea2dc585
91 changed files with 5180 additions and 4101 deletions

View file

@ -9,7 +9,7 @@ to the people living there, they'll always help you.
By the way, any help in writing complete and easy-to-go System plugin
documentation will be appreciated.
Note: it will be best to turn plugin onload off in case of using System
Note: it will be best to turn plugin unload off in case of using System
plugin (SetPluginUnload alwaysoff).
============== Main functions ==============
@ -78,6 +78,9 @@ Proc:
::addr -> Handle to system proc (memory address)
*addr -> Structure
* -> New structure
IPtr->MemberIdx -> Call member with member index from interface given
by interface pointer IPtr (IPtr will be passed to
proc automatically, use like C++ call).
nothing -> Dup proc, usually callback or for future defenition
proc -> Ready proc specification for use or redefinition
@ -109,8 +112,8 @@ Params & Return - Type:
i - int (includes char, byte, short, handles, pointers and so on)
l - long & large integer (know as int64)
t - text, string (LPCSTR, pointer to first character)
b - boolean (needs/returns 'true':'false') - by the fact this type is
senseless -> usual integer can be used ('0':'1')
w - WCHAR text, or unicode string.
g - GUID
k - callback. See Callback section.
* - pointer specifier -> the proc needs the pointer to type, affects
@ -124,7 +127,10 @@ For structures:
&i - smaller types: &i4, &i2 (short), &i1 (byte)
&l - cumbersome, but &lN means the structure size (N bytes value),
calculated automaticaly, outputed always as int (N could be 0).
&t - structure contains plain text, &tN - lenght == N bytes.
&t - structure contains plain text, &tN, where lenght == N bytes.
&w - structure contains plain unicode text, &tN,
where lenght == (N)/2 chars = N bytes.
&g - &gN copy N bytes of plain GUID. in fact guid size is 16 :)
----------------------------------
Params & Return - Source / Destination: