Hi everyone!
I'm proud to announce the initial beta release of WinBuilder 075.
This is a very special release as it the first that showcases several improvements regarding the script engine and extensive bug fixes that have been reported on the bug tracker.
Peter (PSC) is the mentor for most these fixes and I would like to extend my personal thank you to him for all the good results that made possible such a good script performance.
------------
Please report back any issues that you find with this new beta version, lots of changes have been introduced on the engine so we need feedback to see if anything was left to be corrected.
If you find a bug on WinBuilder
074, please mention it on the
bug tracker.
If you find a bug on WinBuilder
075, please post it here.
---------------------------------------------------------------------------------
Beta 6 (14-Jan-2009)Download:http://winbuilder.net/download.php?view.36Log of changesCODE
[075] beta 6
fixed - bug in If,existregsection
fixed - bug in StrFormat,CTRIM if the SingleChar was an escape like #$q
*** preview as beta 5 a
added - escape of escape. e.g. ##$p writes the three characters #$p rather than a percentage
*** preview as beta 5 b
fixed - bug in nested begin - end
fixed - space in parameters
*** preview as beta 5 c
fixed - Bug ID #19: CPU 100% When double clicking an attachement
added - optional output of original lines in log
speed - in log html build, replaced if - else sequence by case statement
fixed - RegRead no longer creates non existing key
*** preview as beta 5 d
fixed - bug in System,GETFREEDRIVE if variable was already defined
fixed - bug in nested begin - end: Run and Exec disturbed the stack
*** preview as beta 5 e
added - System,ONSCRIPTEXIT,command
added - Custom logo size encrease, bug #89
*** preview as beta 5 f
added - STOP, ERROR, DONE, COMMAND as #1 to ONSCRIPTEXIT runs
*** preview as beta 5 g
added - System,ONBUILDEXIT,command
*** preview as beta 5 h
fixed - log listview now allows horizontal scolling
added - an log entry in the log listview can be copied to clipboard by pressing Ctrl+C or doubleclicking the entry
changed - internally split some objects from TScript
added - add some system exceptions to the ONBUILDEXIT functionality.
shown as #1 = EXCEPTION
tracked exceptions will be completed more and more
fixed - bug in ONBUILDEXIT when executing from a script button
added - codebox now with context menu 'magic wand'
*** preview as beta 5 i
fixed - bug in ONBUILDEXIT: Run in a different script was not executed
added - now the exec command also can have parameters like Run command
fixed - bug #92: dropdown list not saved
*** preview as beta 5 j
added - optional timeout for Message and If,Question
fixed - bug #94: edit of folder.project
fixed - bug #98: interface refresh issue when using XP style
fixed - bug #96: Now [Main]Description key may contain line breaks
*** preview as beta 5 k
fixed - bug #100: Save attachment directory
added - optionally hide 'Source' tab
fixed - bug #103: Running functions from interface editor
added - some new functionality to the 'Set' command
*** preview as beta 5 l
fixed - several bugs and misfeatures in GUI, especially when using XP-Style
fixed - bug in macro translation
fixed - bug #108: %ScriptTitel% not printed by magic wand
fixed - bug #95: [process] in script.project
changed - new project tree handling
*** preview as beta 5 m
fixed - several bugs introduced in beta 5 m
added - bug #107: language dependent interface
added - StrFormat,REPLACE and StrFormat,SPLIT
*** preview as beta 5 n
fixed - bug in If,EXISTREGKEY and If,EXISTREGSECTION: Non existing keys were created
fixed - tree navigation by key stroke
added - %WBLanguage% variable
*** preview as beta 5 o
fixed - bug in IniWrite 0x7: #$S instead of spaces
fixed - bug in language dependent interface which created new interface section
fixed - smaller bug in BartPE inf processing: WB sometimes crashed
fixed - RegDeleteKey of a single value
*** preview as beta 5 p
fixed - bug #113: key navigation in download pane
*** preview as beta 5 q
added - optional confirmation of Build STOP button click
fixed - bug in If,Online
*** preview as beta 5 r
fixed - bug with #$s in regwrite multiple strings
fixed - bug in interface editor when resizing a FileBox
*** preview as beta 5 s
fixed - bug #116: entering text by cut&paste in interface editor destroys the interface if there is a CRLF
fixed - bug #117: Return needed to add text by cut&paste
fixed - downloads are written directly to disk (first with a .tmp added) if
the download succeeds it will be renamed to the final name, otherwise
the tmp file is deleted
*** preview as beta 5 t
changed - escape handling in command dispatcher, hopefully prohibiting something like bug #119
fixed - bug with space in macro definition
*** preview as beta 5 u
changed - wait logic of ShellExecute
*** preview as beta 5 v
added - ShellExecuteDelete command
fixed - bug in System,RefreshInterface
*** preview as beta 5 w
added - Verbose realtime WinBuilder file-logging mechanism implemented (to enable it add "DebugLogEnabled=true" to WinBuilder.ini)
fixed - bug in interface: checkbox text unchangable or lost
added - StrFormat,CharToOem and StrFormat,OemToChar commands
*** preview as beta 5 x
added - Vista UAC warning to manifest
added - Proxy support, final version
*** Preview as beta 5 y
fixed - some interface bugs introduced by internal restructuring started with beta 5 x
fixed - bug 128, Set command
changed - reanimated If,Ping command
added - WB size is saved in INI, and restored next start
fixed - some old WB 074 scripts in WB 075 appear with scrollbar
changed - logic of 'Size Borders' in GUI editor
*** Preview as beta 5 z (next preview will start with UPPERCASE A)
changed - logic of 'Size Borders' in GUI editor: now measure scrollbar width
fixed - wrong color of GUI background
*** Preview as beta 5 A
changed - some more internal structure, Interface editor
added - *.inf can contain WinBuilder sections. [Process] is processed, [Interface] is used for building GUI, [Variables] are evaluated
*** Preview as beta 5 B
changed - Source tab implementation
changed - Script editor form separated from WinBuilder's main form - re-implemented large parts
changed - default language now available as independent in-exe-resource (editable via resource editor after UPX decompressing WinBuilder.exe)
changed - script interface gui can now be aligned exactly with the beveled banner above (use "pBevel1,1,12,-1,0,557,318")
*** Preview as beta 5 C
recreated - escape of escape. e.g. ##$p writes the three characters #$p rather than a percentage (lost by introducing the VariablesManager class)
recreated - lost colored background in interface editor, when using non-classic style
*** Preview as beta 5 D
fixed - Fixed second editor (access violation, missing language, etc.)
added - 'escape of escape' functionality to 'Set,...,PERMANENT' command
added - Variables %ProcessorType% and %Wow64% to let scripts handle 64 bit specials
*** Preview as beta 5 E
recreated - Magic Wand works in CodeBox
fixed - Variables %ProcessorType% and %Wow64% to let scripts handle 64 bit specials
added - Variable %Wow64Dir% to let scripts handle 64 bit specials
changed - truncate debug log file (WinBuilder.log) on start of WinBuilder
*** Preview as beta 5 F
fixed - bug in Convert BartPE, introduced by inserting apostrophes to the title
changed - Click on picture in GUI now may be some more Wow64 friendly
added - StrFormat,POS
*** Preview as beta 5 G
added - New variable %HostOS%
fixed - Label font size bug with resolutions different from 96 DPI
fixed - bug in System,GETFREEDRIVE: a 'not connected network drive' was assumed to be free
*** Preview as beta 5 H
added - System,REGREDIRECT
added - System,FILEREDIRECT
*** Preview as beta 5 I
fixed - reanimated fixed folder view
rebuilt - old ShellExecute functionality
*** Preview as beta 5 J
fixed - Access violation when there is no project
fixed - bug with lost file level on GUI edit
fixed - bug with labeled edit box on GUI edit
added - BartPE inf is skipped when [PEBuilder] contains WinBuilder=0
fixed - new bug with nested If commands
added - Indents in Begin ... End blocks
*** Preview as beta 5 K
recreated - ShowSourceTab functionality which was lost in server transfer
*** Preview as beta 5 L
fixed - bug with appearing 'Description' tab on script errors
*** Preview as beta 5 M
added - small grid facilities in interface editor
*** Preview as beta 5 N
changed - Wait command with process messages
added - If,RUNS command
*** Preview as beta 5 O
recreated - lost language dependent interface
fixed - some new issues with refresh interface on xp-style
fixed - autosave of script source on program exit
fixed - bug in WebGet: If a file exists and WebGet of the same file failed with MD5 error, the existing file was deleted
added - On_Exit and On_Enter events to scripts
fixed - lost redirection in http download
*** Preview as beta 5 P
added - System,GetFileSystem command
fixed - bug in magic wand: did not work in codebox after script edit has been used
fixed - correct WB startup coordinates when winbuilder.ini points outside desktop
*** Preview as beta 5 Q
fixed - Several lost download functionality
fixed - bug in magic wand: still did not work in codebox after source editor has been used
fixed - some new interface issues when working under xp-style
fixed - script was truncated when in attachement modus winbuilder has been exited
*** Preview as beta 5 R
fixed - attachement 'delete folder' did not delete files, too
fixed - access violation after use of file box
added - System,IsAdmin command
added - System,GetEnv command
*** Preview as beta 5 S
reanimated - If,License command
*** Preview as beta 5 T
****************
System,ONSCRIPTEXIT,command
This statement can be written anywhere inside the running part of a script.
It is exexuted after the last script's statement has been executed.
If command is 'Run', as parameter #1 the 'type' of the exit is passed
DONE > normal finish
STOP > the user clicked the STOP button
ERROR > the script has been finished because of an error
COMMAND > the script has beeen finished because of a System,Halt or System,Exit command
EXCEPTION > a system exception occurred during process, e.g. 'index out of bounds'
This should not occur in a debugged script; it is a help for the .script developer.
Samples:
System,ONSCRIPTEXIT,Run,%ScriptFile%,Cleanup
[Cleanup]
If,#1,Equal,ERROR,Begin
...
End
System,ONSCRIPTEXIT,Message,"Everything Done!",INFORMATION
****************
System,ONBUILDEXIT,command
This statement can be written anywhere inside the running part of any script.
Always the last executed statement is valid.
So different scripts can define different actions or deactivate with
System,ONBUILDEXIT,
It is exexuted, after the last script in the project has been processed.
If command is 'Run' as parameter #1 the 'type' of the exit is passed
DONE > normal finish of the complete build
STOP > the user clicked the STOP button. This has ended the build
ERROR > a script has been finished because of an error. This has ended the build
COMMAND > a script has beeen finished because of a System,Halt command. This has ended the build
EXCEPTION > a system exception occurred during process, e.g. 'index out of bounds'
This should not occur in a debugged script; it is a help for the .script developer.
Sample:
System,ONBUILDEXIT,Run,%ProjectDir%\CleanupScript,Cleanup
***************
optional timeout for Message and If,Question
The current syntax is still valid and holds the dialog open 'for ever':
Message,MessageText,INFORMATION
If,QUESTION,QuestionText,command
Timeout for Message and If,Question:
Message,MessageText,INFORMATION,10
The message dialog closes when clicking the 'OK' or when it has been visible for 10 seconds
If,QUESTION,QuestionText,3,True,command
The question dialog closes when clicking the 'Yes' 'No' or when it has been visible for 3 seconds.
In the second case clicking of 'Yes' is assumed to be True
If,QUESTION,QuestionText,5,False,command
The question dialog closes when clicking the 'Yes' 'No' or when it has been visible for 5 seconds.
In the second case clicking of 'Yes' is assumed to be False
***************
optionally hide 'Source' tab:
Global: In WinBuilder.ini, manually set [Main]ShowSourceTab=False
Project: In script.project, manually set [Main]ShowSourceTab=False
script.project values overwrite WinBuilder.ini values!
If the 'Source' tab is hidden, there is also no check for valid source!
****************
some new functionality to the 'Set' command
Currently:
Set,%Var%,NewValue
New:
Set,%Var%,NewValue,GLOBAL: %Var% will be defined in all subsequent scripts of the current build.
Set,%Var%,NewValue,PERMANENT: %Var% will be defined in all subsequent scripts of the current build.
- Additionally %Var% is written into script.project and therefore valid for all subsequent builds.
If NewValue is 'NIL' (w/o the apostrophes) the variable will be removed (current script, current build or permanent like in the normal Set) and will not be detected in an 'If,EXISTVAR' statement.
Of course this causes that NIL as value for a variable is forbidden!
****************
StrFormat,REPLACE and StrFormat,SPLIT
StrFormat,REPLACE,String,CharsToReplace,ReplacementChars,%VarResult%
StrFormat,SPLIT,String,DelimiterChar,Index,%VarResult%
Index=0 > number of items
Sample:
[variables]
%from%=brown
%to%=yellow
%source%=The quick brown fox jumps over the lazy dog
[process]
StrFormat,REPLACE,%source%,%from%,%to%,%VarResult%
Echo,%VarResult%
StrFormat,SPLIT,%source%,#$s,0,%count%
Loop,%ScriptFile%,Section,1,%count%
[section]
StrFormat,SPLIT,%source%,#$s,#c,%VarResult%
Echo,%VarResult%
result:
[Success] StrFormat - converted [REPLACE(%source%,%from%,%to%)] to variable: [%VarResult%] with result: [The quick yellow fox jumps over the lazy dog]
[Info] The quick yellow fox jumps over the lazy dog
[Success] StrFormat - converted [SPLIT(%source%, ,0)] to variable: [%count%] with result: [9]
Loop [Section] From file: [%BaseDir%\Projects\nativeEx_barebone_075\CodeBox.txt]
[Parameter] with parameters: [1]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [The]
[Info] The
[Parameter] with parameters: [2]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [quick]
[Info] quick
[Parameter] with parameters: [3]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [brown]
[Info] brown
[Parameter] with parameters: [4]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [fox]
[Info] fox
[Parameter] with parameters: [5]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [jumps]
[Info] jumps
[Parameter] with parameters: [6]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [over]
[Info] over
[Parameter] with parameters: [7]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [the]
[Info] the
[Parameter] with parameters: [8]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [lazy]
[Info] lazy
[Parameter] with parameters: [9]
[Success] StrFormat - converted [SPLIT(%source%, ,#c)] to variable: [%VarResult%] with result: [dog]
[Info] dog
Loop - Processed section [Section] in file: [%BaseDir%\Projects\nativeEx_barebone_075\CodeBox.txt]
************************
language dependent interface
Additional to the [Interface] section a script can contain an 'unlimited' number of [Interface-<language>] sections.
<language> is the item you can choose in Tools > Language
If the user has choosen a language different from "_default" (English) and [Interface-<language>] exists,
the the GUI is drawn unsing this section rather than using [Interface].
CAUTION: The [Interface-<language>] section must contain ALL [Interface] items, not only those which are different!
IMPORTANT: If you edit the interface, only the currently active one is changed, either [Interface] or [Interface-<language>]
************************
added - optional confirmation of Build STOP button click
If in WinBuilder.ini a key like
StopAgree=Realy stop the build?
is defined, this question comes up after clicking the STOP button during build, and the user can decide between 'Yes' and 'No'.
This gives e.g. the possibility to interrupt the build for a while to do some other tasks.
There is a language mechanism like in 'language dependent interface'
Sample:
StopAgree=Really stop the build?
StopAgree-German=Wirklich abbrechen?
StopAgree-Portuguese=Voc quer interromper-se realmente?
If the language is German, the German question comes up.
If the language is Portuguese, the Portuguese question comes up.
With ALL other languages the English Question comes up
************************
added - StrFormat,CharToOem and StrFormat,OemToChar commands
Sample:
[process]
StrFormat,CHARTOOEM,'aasf',%var%
Echo,%var%
StrFormat,OEMTOCHAR,%var%',%var%
Echo,%var%
Result:
[Success] StrFormat - converted [CHARTOOEM('aasf',%var%)] to variable: [%var%] with result: ['aasf']
[Info] 'aasf'
[Success] StrFormat - converted [OEMTOCHAR(%var%',%var%)] to variable: [%var%] with result: ['aasf'']
[Info] 'aasf''
************************
changed - Source tab implementation
Now in the main window the 'Script', 'Paths', 'Codebox', 'Log' tabs are independent from the project tree view.
If in previous versions you are e.g. in the 'Codebox' tab and clicked a different node in the tree view, you automatically switched to the 'Script' tab.
Now in this case you remain in the Codebox tab, but in the background everything is changed to the new active tree view node.
You can see: If the new node belongs to a different project, the Codebox contents changes to the snippets of that different project.
Switching to other tabs, you see the contents belonging to the new node.
************************
added - StrFormat,POS
Sample:
[Process]
StrFormat,POS,"Hello World",orl,%var%
Echo,%var%
Result:
StrFormat - converted [POS(Hello World,orl,%var%)] to variable: [%var%] with result: [8]
8
****************
added - System,REGREDIRECT
System,REGREDIRECT,64
System,ERROROFF,2
RegRead,HKLM,SOFTWARE\InnoTek\VirtualBox,InstallDir,%VBPath%
If,NOTEXISTVAR,%VBPath%,RegRead,HKLM,"SOFTWARE\Sun\xVM VirtualBox",InstallDir,%VBPath%
System,REGREDIRECT,OFF
added - System,FILEREDIRECT
System,FILEREDIRECT,OFF
ShellExecute,Hide,"cmd.exe","/c imdisk -d -m %FreeLetter%"
System,FILEREDIRECT,ON
****************
added - On_Exit and On_Enter events to scripts
This applies to navigating in the project tree ONLY. It does not have any influence on running the scripts
When in the project tree by mouse click on by key stroke you enter a script:
If the script has the section [On_Enter] the section is processed.
Corresponding functionality with [On_Exit] when leaving the script.
----------------------------------------------------------------------------------
Beta 5 (18-Sep-2008)Download:http://winbuilder.net/download.php?view.34Log of changesCODE
fixed - double 'beta' in form caption
fixed - unsaved change of download server constellation
fixed - default.txt is missing
fixed - 'Index out of bounds' when last download server is deleted
fixed - 'feature' how to remove custom program logo
*** preview as beta 4 a
fixed - some smaller issues with download servers
fixed - ExtractAndRun bug
fixed - internal variables like %scriptDir% can contain commas
added - 'Stop Build on Error' option
fixed - senceless 'v.' in progress window
*** preview as beta 4 b
fixed - sort order bug with mapped folders
fixed - ShellExecuteEx bug when opening documents by associated app
added - Option to name log.html with additional time stamp
added - Option to build log.html immediatelly after build w/o user interaction
*** preview as beta 4 c
fixed - Bug with If,(NOT)EXISTFILE/DIR checking empty floppy drive
added - Loop statement can run between characters, e.g. drive letters
added - Strformat,INC and Strformat,DEC also work on characters
modified - nicer output in log.html
*** preview as beta 4 d
fixed - bug with file type associations
fixed - Convert tool - wrong popup menu
added - Convert tool - remove file from list
added - suggestion how to have certain scripts be selected mandatory
*** preview as beta 4 e
added - RegDelete of values
added - 'Not' option to If command
*** preview as beta 4 f
added - StrFormat can extract path, filename and extentions from URLs
*** preview as beta 4 g
fixed - bug in 'Exit on Error' when extracting files
*** preview as beta 4 h
fixed - Minor code changes and corrections to clean the hint & warnings reported on compile time
fixed - bug 'system error occurs' in clicking log treeview
fixed - newly added web servers for download are not tracked in WinBuilder.ini
*** preview as beta 4 i
fixed - bug when running script from source editor
fixed - delete temporary files after extracting an attachement
added - optional automatic log after clicking the STOP button
*** preview as beta 4 j
fixed - wrong parent's node check marks when selecting with space bar
changed - RegDelete syntax
*** preview as beta 4 k
changed - starting to clean up language support
changed - remove 'charset' from log.html meta content tag
fixed - finally(?) wrong parent's node check marks when selecting with space bar
*** preview as beta 4 l
### some consolidation with respect to next beta release
removed - 'STOP' in interface editor when using themes other than XDP-classic
removed - 'protected' functionality
added - about 30 items to language translation
removed - new RegDelete syntax, temporarily use old syntax (see magic wand)
*** preview as beta 4 m
changed - new RegDelete syntax again
fixed - some smaller GUI adjustements
added - some more items to language translation
added - System,ERROROFF can get number of lines as optional argument
*** preview as beta 4 n
added - files to be converted can be Drag&Drop-ed from explorer
added - files to be attached can be Drag&Drop-ed from explorer
added - If,ExistRegSection and If,ExistRegKey
added - proxy support
added - 'mandatory scripts' functionality (replaces removed Protect functionality)
cleaned - internal If command logic
*** preview as beta 4 o
changed - WinBuilder always runs in CPU #0 only, also on multiprocessor and multicore systems
added - internal variables %ProjectTitle% and %ScriptTitle%
added - basic raw registry editor support
*** preview as beta 4 p
fixed - script was not shown if there was a folder with a name equal to the script's title
*** preview as beta 4 q
fixed - enable RegRead of expandable strings 0x2
fixed - decode macro names only as first argument
fixed - store changed text in a filebox
added - Show Progress Window also when processing codebox ot buttons.
added - several smaller adjustements
added - autosave option for source code editor
*** preview as beta 4 r
fixed - Changing source folder to a folder already on list
changed - parameter stack added for 'Run' and 'Loop' statements
fixed - bug occurring when a line contained a non-variable '%'
*** preview as beta 4 s
fixed - bug in If,QUESTION with space inside question
fixed - 'Use Path Rule' now unchecked by default
changed - some smaller corrections
*** preview as beta 4 t
changed - now nested 'begin' - 'end' is possible. 'begin' stack added
changed - no flushing window on missing source
changed - dont show scripts of 0 bytes size
*** preview as beta 4 u
fixed - bug in System,GETFREEDRIVE
fixed - bug in previous / next selected: Changes were lost
*** preview as beta 4 v
fixed - bug in macro expanding
*** preview as beta 4 w
********************
Loop statement can run between characters, e.g. drive letters
Sample:
[variables]
%a_searchFile%=Program Files\BootStick_2008_001\Pstart.exe
[process]
Loop,%ScriptFile%,Try,a,z
If,EXISTFILE,%pstart%,ShellExecute,OPEN,%pstart%
[try]
Set,%pstart%,#c:\%a_searchFile%
If,EXISTFILE,%pstart%,Loop,BREAK
******************
New Syntax:
RegDelete,HKLM,Section,Key deletes 'Key' under 'Section'
RegDelete,HKLM,Section deletes the complete 'Section'
Old Syntax:
RegDelete,HKLM,Section,Key,Value deletes 'Value' under 'Section\Key'
RegDelete,HKLM,Section,Key deletes the complete 'key' under 'Section'
******************
'Not' option to If command
You negate an If command by inserting an 'Not'
If,someting,... > If,Not,something ...
If,Not,%var1%,EQUAL,%var2%,command
has the same result as
If,%var1%,NOTEQUAL,%var2%,command
The current NOTEQUAL, NOTEXISTDIR, ... commands are still processes because of compatibility reasons
But before processing they are internally changed into If,Not,...
Therefore
If,NOT,%var%,NOTEQUAL,%test%,...
is invalid and may produce inpredictable results
Try this in CodeBox:
[Process]
Set,%var%,3
If,%var%,EQUAL,3,Echo,"3 is equal to %var%"
If,Not,%var%,EQUAL,3,Echo,"3 is not equal to %var%"
If,%var%,NOTEQUAL,3,Echo,"3 is not equal to %var%"
Set,%var%,4
If,%var%,EQUAL,3,Echo,"3 is equal to %var%"
If,Not,%var%,EQUAL,3,Echo,"3 is not equal to %var%"
If,%var%,NOTEQUAL,3,Echo,"3 is not equal to %var%"
****************
StrFormat can extract path, filename and extentions from URLs:
[Variables]
%DownloadURL1%=http://live.sysinternals.com/Bginfo.exe
[Process]
StrFormat,PATH,%DownloadURL1%,%fnam%
StrFormat,FILENAME,%DownloadURL1%,%fnam%
StrFormat,EXT,%DownloadURL1%,%fnam%
results in:
StrFormat - converted: [%DownloadURL1%] to variable: [%fnam%] with result: [http://live.sysinternals.com/]
StrFormat - converted: [%DownloadURL1%] to variable: [%fnam%] with result: [Bginfo.exe]
StrFormat - converted: [%DownloadURL1%] to variable: [%fnam%] with result: [.exe]
***************
New If commands:
If,ExistRegSection,HKLM,Section,Command
If,ExistRegKey,HKLM,Section,Key,Command
***************
Scripts having '[Main] Mandatory=True' are marked in the tree with a red exclamation mark and cannot be deselected.
In the Interface editor there is a check box 'Mandatory' to set or unset this property.
This protection mechanism can be switched off by the developer by adding [Main] Mandatory=False to WinBuilder.ini
***************
Autosave option
Autosave is On by default.
You can switch it permanently On / Off by using the 'Options' tab in Tools Mode
The 'save' button in the source editor is only visible if autosave is off.
--------------------------------------------------------------------------------------------------------------
Beta 4 (29-Jun-2008)Download: http://winbuilder.net/download.php?view.33Log of changes:QUOTE
modified - log button will always be displayed when using codebox
added - folder linking (link to script folder trees of a different project)
added - Retrieve,FileVersion command
added - output of localized strings
added - StrFormat,Ceil and StrFormat,Floor
added - WBZip by booty#1 as standard de/encoding
added - System,GetFreeDrive command
added - System,ErrorOff command
added - Webget of FTP:// URLs
fixed - Else,Set,%var%,xxx bug
fixed - Some (WB 75 new) issues fixed with spaces in the %BaseDir% name
fixed - bug in FileByteExtract (popup error if sequence not found)
fixed - project tree bug with deselect on collapsing
fixed - RegImport bug
fixed - interface bug with unshown labels
***********************
Output of localized stringsall strings defined in the language files can be used like variables,
identified by their ID number $#nnnn.
Sample:
CODE
If,Question,$#1541?,Command
If language is default (English) the appearing question dialog box shows:
'Save changes to disk?'
In case of German language choosen it would show:
'nderungen auf Platte schreiben?'
The question mark is part of the TEXT, not part of the ID!
****************
StrFormat,Ceil and StrFormat,FloorCODE
StrFormat,Ceil,%var%,size
StrFormat,Floor,%var%,size
size can be
- number e.g. 512
- character k meaning 1024
- character m meaning 1024 * 1024
*****************
Retrieve,FileVersion commandCODE
Retrieve,FileVersion,%var%
Fills %var% with the file version string, as it can be seen by viewing the file's properties
*************************
System,GetFreeDrive commandCODE
System,GetFreeDrive,%var%
fills %var% with the highest available free drive letter, mostly 'Z:'
***********************
System,ErrorOff commandIf the immediatelly following command fails, it is flagged in the log as 'ignored' rather than as 'Failed'
--------------------------------------------------------------------------------------------------------------
Beta 3 (10-Jun-2008)Download: http://winbuilder.net/download.php?view.32Log of changes:QUOTE
added - begin/end for If and Else commands
added - buttons to step through selected scripts
fixed - attachement context menu
fixed - multiple anchors in log
fixed - WebGet bug with redirection
Example of the new code syntax for begin/end for If and Else commands:
CODE
[Variables]
%var%=2
[process]
If,%var%,Equal,2,begin
Echo,2-0
Echo,2-1
Echo,2-2
end
Else,begin
Echo,a-0
Echo,a-1
Echo,a-2
end
If,%var%,Equal,3,begin
Echo,3-0
Echo,3-1
Echo,3-2
end
Else,begin
Echo,x-0
Echo,x-1
Echo,x-2
end
Echo,"All Done"
Result:QUOTE
[Success] IF - [(%var%)2] is equal to: [2] executing command: [begin]
[Info] 2-0
[Info] 2-1
[Info] 2-2
[Success] [end]
[Ignore] ELSE - [begin]
[Ignore] [Echo,a-0]
[Ignore] [Echo,a-1]
[Ignore] [Echo,a-2]
[Ignore] [end]
[Ignore] IF - [(%var%)2] is not equal to: [3] evaluated string: [If,%var%,Equal,3,begin]
[Ignore] [Echo,3-0]
[Ignore] [Echo,3-1]
[Ignore] [Echo,3-2]
[Ignore] [end]
[Success] ELSE - executing command: [begin]
[Info] x-0
[Info] x-1
[Info] x-2
[Success] [end]
[Info] All Done
--------------------------------------------------------------------------------------------------------------
Beta 2 (06-Jun-2008)Download: http://winbuilder.net/download.php?view.31QUOTE
added - 'variable names can contain variables'
added - Multiple 'Else,If' possible
added - 'Loop' statement
added - %ExitCode% for ShellExecute
added - System,Cursor,Wait / Normal
added - Expand Echo,Message to optional Echo,Message[,Warn]
added - button to open Download Center from main window
added - updates.ini can will open a custom website if specific info is found ([info] -> Website=http://myexample.com)
fixed - greyed scrollbars area
fixed - bug with disappearing or moving components
fixed - bug with overwritten component, if wrong order
fixed - bug in RegGetNext
fixed - bug in script macro resolving
fixed - CopyOrExpand now works in W2000 host
fixed - Main treeview has a stable behavior
modified - Some cosmetics in log.html generation
modified - GUI editor fixes
modified - Log tab is only visible whenever it is not empty
modified - wb License is now visible by default under the Tools menu
removed - If,License and If,NotLicense commands
removed - IE dependency to allow wb work on Windows 2000 (no proxy support based on IE settings)
removed - Web and Help tab were removed to keep GUI simpler and quickier to load
removed - All built-in FTP upload functions were removed since most developer prefer to use own FTP clients
removed - Backup Tool was removed since it was rarely used
--------------------------------------------------------------------------------------------------------------
Beta 1 (12-May-2008)Download: http://winbuilder.net/download.php?view.30QUOTE
- Added - Version number next to script description
- Fix bug #32 (Retreive cmd)
- Fix bug with RegRead MULTI_SZ
- Implementation of REG_NONE
- Log generation accelerated; Fix of 'truncated log lines'
- Add Generation of API format lines to 'Convert from BartPE'
- Separate unit 'ConvertBart'
- ConvertBart now can handle most 'standard' app scripts including a start menu entry extracted from nu2menu???.xml
- New unit nu2menu
- Fix bug #7 with Access violation on double click
- Fix bug in StrFormat: Now last parameter can be %variable%
- Add string functions RTrim, LTrim, CTRim, Left, Mid, Right to StrFormat
- Fix bug in If,ExistSection and If,NotExistSection
- New enhanced variables handling
- Add If,ExistVar and If,NotExistVar
- Add Else command
- RegWrite,0x4 now accepts four binary hex bytes in addition to DWORD
- Unload open hive after clicking the stop button
- Add ProcessMessages in RunLite loop
- STOP button now works also during Exec command
- Fix bug in RegRead 0x3
- Accelerated creation of log HTMLs
One of the biggest overall improvement are the variables handling and the introduction of direct support for running bartPE plugins as if they were app scripts. To test this feature, add your plugins inside a LiveXP/NativeEx or any other XP based project that supports app scripts.
Happy testing, hope you like this new version!
This post has been edited by Nuno Brito: Jan 14 2009, 08:57 PM