We have just released WinBatch, WebBatch and WinBatch+Compiler 2017B.
Customers on an active maintenance plan may download the latest version of the software from the download page.
http://www.winbatch.com/download.html
If you do not have a current maintenance plan and are interested in getting updated, please visit our software maintenance renewal page. You can easily order online.
http://renewal.winbatch.com
WB 2017B Apr 12, 2017
DLL 6.17bqb First showing up in WB 2017B
Fixed interpreter problem that prevented the use of conditional control statement reserved
words as the first word of a multiline sting line within an non-executing conditional
statement block.
Fixed a problem in file related functions that accept a delimited list as input. This
problem caused these functions to ignore remaining list items after processing the files
matching a list item containing one or more wildcards characters. The problem affected the
FileAppend, FileAttrSet, FileAttrSetEx, FileCopy, FileCopyAttr, FileDelete, FileMove,
FileMoveAttr, FileRename, FileSize, FileSizeEx, FileDelete, FileTimeSet, FileTimeSetEx and
FileTimeTouch functions.
Added a new p1 option to Intcontrol 93 to support RFC-3161-compliant Timestamp Authority
services for time-stamping signed files. This option is only available when WinBatch is
running on Windows 8/2012 and newer Windows operating systems.
p1 Meaning
-- -------
3 Sign a file and use an RFC-3161-compliant Timestamp Server (Windows 8 or newer.)
p2 specifies a tab-delimited string with the following six parameters:
- file to sign
- certificate friendly name
- description of file being signed (can be "" if not needed)
- location (URL) of information about file (can be "" if not needed)
- URL of RFC-3161-compliant timestamp server (can be "" if not needed)
- timestamp server's hash algorithm: sha1, sha256, sha385, or sha512 (defaults
to sha256 if "" and ignored if no timestamp server provided)
Note that when Microsoft implements "Phase Three" of their SHA-1 phase out, newer
versions of Windows may treat signed files timestamped using a legacy SHA-1 hash
timestamp server as untrusted after the signing certificate's expiration date has
passed. Microsoft currently states that, "Long-term, Microsoft intends to distrust SHA-1
throughout Windows in all contexts. Microsoft is closely monitoring the latest research
on the feasibility of SHA-1 attacks and will use this to determine complete deprecation
timelines."
Also note that only SHA-1, Authenticode timestamped files are recognized as trusted on
Windows Vista/2008. Fully updated versions of Windows 7/2008R2 and all newer versions of
windows trust SHA-256, RFC-3161-compliant timestamped files.
New Function:
TimeFormat(s:ymdhms, s:format)
Returns the date and/or time as a text string in the indicated format. The maximum
total expanded size of the returned string is limited to 2048 characters.
"ymdhms" - Date/time in YYYY:MM:DD:HH:MM:SS WIL time format.
"format" - String indicate the date and/or time format of the date and/or time
returned by the function. The following table lists the standard Windows
date and time format characters accepted by the function. Non-format
character are accepted but should be enclosed in single (') quotes to avoid
non-format characters being used for date/time formatting. In order to
include a single quote in the returned text escape it with a second single
quote. For example, '''' will create one single quote in the return text.
Format Used For Description
d Days Displays the day as a number from 1 to 31
dd Days Displays the day as a number with a leading 0 if the number
is less than 10
ddd Weekdays Displays a weekday name with 3 letters as Mon, Tue, etc
dddd Weekdays Displays the complete name of a week day as Monday, etc
M Months Displays the numeric month from 1 to 12
MM Months Displays the numeric month with a leading 0 if the number is
less than 10
MMM Months Displays the short name of the month as Jan, Feb, Mar, etc.
MMMM Months Displays the complete name of the month as January, etc
yy Years Displays two digits for the year as 00 for 2000 or 03 for 2003
yyyy Years Displays the numeric year with 4 digits
h Hours Hours with no leading zero for single-digit hours; 12-hour
clock.
hh Hours Hours with leading zero for single-digit hours; 12-hour clock
H Hours Hours with no leading zero for single-digit hours; 24-hour
clock
HH Hours Hours with leading zero for single-digit hours; 24-hour clock
m Minutes Minutes with no leading zero for single-digit minutes
mm Minutes Minutes with leading zero for single-digit minutes.
s Seconds Seconds with no leading zero for single-digit seconds
ss Seconds Seconds with leading zero for single-digit seconds
t Time Mark Two-character abbreviation (for example, AM or PM)*
* This function does not support single character time marks.
FileMenu Shell Extension
Added workaround for a defect in Windows Explorer on Windows 7 and older versions of
64-bit Windows. This defect caused duplicate FileMenu menu items to appear when the
Explorer window's "File" menu bar item was repeatedly selected while a file name was
selected in the file list window.
Add the "wbt64" file extension to the filemenu.ini file. The extension is mapped to the
same "FileMenu for WinBatch files.mnw' menu file used for the "wbt" extension.
Changes to the Dialog and related functions
Added support for an optional date ranges to the CALENDAR control. The control's
variable can now contain a vertical bar(|) delimited list of YMDHMS date values. The
first item of the list is used as the control's initial date. The second item is the
minimum date the control will accept and the third item is the maximum date the control
will accept. The CALENDAR control's range can also be set using the DialogControlSet
function with the @Date request code and a vertical bar(|) delimited list of YMDHMS
date values.
Increased the maximum number of control definitions recognized per dialog template from
300 to 500.
Compiler
Added new "Use RFC 3161 Timestamp" option to the "Code Signing Details" dialog. When
this option is checked the compiler will timestamp the executable using a
RFC-3161-compliant timestamp server and the more secure SHA-256 hash algorithm. When
this option is not checked the compiler will use an Authenticode timestamp server and
the SHA-1 hash algorithm to timestamp the executable file.
This option is enabled when the compiler is executing on Windows 8/2012 R2 and newer
versions of Windows. It is disabled on older versions of Windows because older
platforms lack the functionality necessary to support RFC-3161-compliant timestamp
servers for timestamp operations.
Windows Vista/2008 cannot process RFC-3161-compliant timestamps and will consider
applications timestamped using an RFC-3161-compliant timestamp server untrusted.
Windows 7/2008R2 and newer versions of Windows trust executables timestamped using
an RFC-3161-compliant timestamp server.
As mentioned in the new IntControl 93 p1 option notes, Microsoft states that,
"Long-term, Microsoft intends to distrust SHA-1 throughout Windows in all contexts.
Microsoft is closely monitoring the latest research on the feasibility of SHA-1 attacks
and will use this to determine complete deprecation timelines."