*************** WinBatch+Comiler 2020B release ***************

Started by td, August 04, 2020, 11:02:46 AM

Previous topic - Next topic

td



WinBatch, WebBatch, and WinBatch+Compiler 2020B are now available for download.

Customers with a current license may download the latest version of the software from the download page.

https://www.winbatch.com/download.html

If you do not have a current license and are interested in this and future releases, please visit our software purchase page. You can easily order online. 

https://commerce.winbatch.com

The only changes between the 2020b beta release and the 2020b final release involve documentation and WinBatch Studio auxiliary files but beta users are still encouraged to download the production version. 



WB 2020B Aug 04, 2020   

DLL 6.20btb First appearing in WB 2020B
   
   Addressed problem that caused the WIL debugger to display a memory error when creating a
   WIL Map in a debugging session.

   Added support for the ULONG64 data type name in structure descriptor strings passed to the
   DllStructAlloc function. The ULONG64 data type represents an unsigned 64-bit integer. Like
   other 64-bit data types, ULONG64s must be represented by text strings when passed to the
   DllStructPoke function.  Likewise, DllStructPeek returns ULONG64 structure members as text
   strings.
   
   Fix WIL map assignment statement parsing issue by detecting an undefined WIL Map key when
   the key is from an undefined element of an array and the array variable is a pointer to the
   array. The WIl parser now generates an error message instead of changing the variable
   containing the WIL Map into a variable containing the value on the right-hand side of the
   assignment statement.

   Addressed problem that caused variant variables of type VT_INT to not be recognized as
   integers in relational expressions.  This error caused an unexpected "3057: Variable
   could not be converted to a valid number" error when a variant value with the variant
   type VT_INT appeared in a relational expression.

   Fixed issue that caused the Dialog function to return without displaying the dialog or
   generating an error when the dialog template contained an invalid dialog background
   color descriptor.
   
   Modified the WinBatch Navigator script to use the new ShellExecuteWait function instead of
   the RunWait function to prevent launch errors of Roboscripter and other executables on a few
   systems.

   New functions:
    MapKeysGet(m:map, n:return-type[, s:delimiter])
     Returns all the keys stored in a WIL map.
       map:         a variable containing a WIL map.
       return-type: 1 = return an array, 2 = return a delimited list
       delimiter:   (optional) one character delimiter used when list is returned. Defaults to
                    a tab character.
   
    MapValuesGet(m:map, n:return-type[, s:delimiter])
     Returns all the values stored in a WIL map.
       map:         a variable containing a WIL map.
       return-type: 1 = return an array, 2 = return a delimited list. Non-convertible values are
                    skipped in the returned delimited list.
       delimiter:   (optional) one character delimiter used when a list is returned. Defaults to
                    a tab character.
   
    ShellExecuteWait(s:program-name, s:params, s:directory, n:display mode, s:operation)
     Returns @True when a new process is started and the script calling the function is paused
     while the new process is executing. This function is identical to the ShellExecute WIL
     function in all other respects. Note that it is possible for the function to successfully
     perform the task indicated by the parameters but not pause the script.  This can happen when
     the indicated task does not start a new process.  The function indicates that the script is
     not paused by returning immediately with a value of @False.
       program-name: the name of the desired .EXE, .COM, .PIF, .BAT, .CMD file or a data file.
       params:       optional parameters as required by the application.
       directory:    current working directory (if applicable).
       display mode: @NORMAL, @ICON, @ZOOMED, @HIDDEN, @NOACTIVATE, or 0 for the default mode.
       operation:    operation to perform on the specified file.


   Added 3 new REPORTVIEW control request-codes to the DialogControlGet function.
     @dcItemcColor (29) - (l) Returns a string containing two color descriptors for a REPORTVIEW
                          control item's text and background color.  Each color descriptor
                          consists of 3 vertical bar(|) delimited numbers representing the
                          color's red, green, and blue values.  The 2 color descriptors are
                          separated by a space character delimiter.  The function's
                          "request-value"  parameter must contain a string consisting of the
                          one-based row and column numbers of the control item whose colors are
                          to be returned. The two numbers representing the row and column must be
                          delimited by a comma(,).

     @dcItemRow (30)    - (i) Returns the one-based row number of column 1, the left-most
                          column, of the REPORTVIEW item whose text matches the text placed in
                          the function's "request-value" parameter.
                          Note that if more than one first column item of a control contains
                          the same value, the "request-value"  parameter may need to contain a
                          tab-delimited list of multiple occurrences of the targeted item's
                          text.

     @dcItemText (31)   - (s/l) Returns the text of column 1, the left-most column, of the
                          REPORTVIEW item whose row number matches the number placed in the
                          function's "request-value"  parameter.
                          Note that if more than one first column item of a control contains
                          the same value, the returned text may contain a tab-delimited list
                          of multiple occurrences of the targeted item's text.

   Added a new REPORTVIEW control request-code to the DialogControlSet function.
     @dcItemcColor (29) - (l) Sets the text and background colors of a REPORVIEW control item.
                          The item and colors are indicated by placing a 4 item space character
                          delimited list in the function's set-info parameter. The list's 4
                          items consist of the one-based row number, the one-based column number,
                          a text color descriptor, and a background color descriptors.  The color
                          descriptors can consist of 3 vertical bar(|) delimited numbers or a
                          single hexadecimal number preceded by the letter "h" representing the
                          color's red, green, and blue values. Three-row values have special
                          meaning:
                          -1 color the indicated column of each odd-numbered row.
                          -2 color the indicated column of each even-numbered row.
                          -3 color the indicated column of every row.
                          One column value has a special meaning:
                          -1 color all columns of the indicated row.

   Enhanced WIL Dialog's REPORTVIEW control to load and display the contents of WIL maps. The
   control accepts a WIL map in its template variable and from the DialogControlSet function
   when using the @dcContents request-code.

   Modified the dialog function and WIL Dialog Editor to accept a single hexadecimal RGB color
   value anywhere that a bar (|) delimited RGB color values are used. The single hex value must
   be preceded by the letter "H" or "h" to be recognized as a valid RGB value. Bar delimited 
   decimal number RBG values are still fully supported.
   
   WinBatch Studio and WinBatch Compiler Lexical Analyzer changes:
    Enabled detection of user-defined-procedures redefinition.
   
    Added parameter count checking to user-defined-procedure calls.
   
    Object members for both COM and dotNet object names longer than 30 characters no longer
    generate syntax errors.
   
    Address problem the cause the WinBatch Studio breakpoint command to be flag as an unexpected
    item.

   WinBatch Console:
    Corrected problem that prevented errors occurring inside user-defined-procedures from being
    displayed at the console command line.

    Added new #DefineCommand ... #EndCommand preprocessor statements. Use these two statements
    to create a WinBatch Console only user-defined-command.  User-defined-commands share scope
    rules with user-defined-subroutines but are only callable from WinBatch Console and are
    ignored by WinBatch. The other unique feature of UDCs is their syntax. UDCs are both defined
    and called without opening and closing parentheses. They also use white space instead of
    commas to separate parameters. 
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade