Clarion Handy Tools
Templates, Classes, Utilities, Apps, Projects

August 24, 2019

Build 23C.03.00 Features
HNDAPPS "shipping" apps
count raised from
60 apps to 65 apps.

Find these in the HNDAPPS directory below your Clarion 10 or Clarion 11 installation.

For example: c:\clarion10\hndapps\ or c:\c10\hndapps\ and so on, depending on what your Clarion10 or Clarion11 root is called.

Apps with the "CHT UTILITY" designation are also available pre-compiled in your accessory \bin\ directory, with the source app in \hndapps\.

#61--HNDBACKUPCONFIGSNAP.APP

This "CHT Utility Application" is intended to configure the CHT toolkit to back up your Clarion applications any time your CHT app file is changed and generated in the Clarion IDE. This app uses CHTSNAPZIP.EXE to view your toolkit backup zips and to view zip file contents. CHTSNAPZIP.EXE is discussed below, as well as to restore app and dct files back to your designated restore directory.

Note that HNDBACKUPCONFIGSNAP.APP is provided only as an alternative to HNDBACKUPCONFIG.APP and does the same thing, while illustrating the use of CHTSNAPZIP.EXE rather than HNDNETZIPPER.DLL.

#62--HNDTESTCHTSNAPZIP.APP

This CHT example application is intended to illustrate these templates: ApplicationSnapins, ProcedureSnapins, SnapUnzipStartButton, SnapZipDirStartButton and SnapZipStartButton, as well as use of CHT Classes in modules: HNDSNAPCALL.INC/.CLW.

#63--HNDDOCUMENTBUILDER.APP

This "CHT Utility Application", CHT HTML Document Builder, is an excellent tool for creating HTML documents, for example, book chapters, manuals, and standard, static web pages. It creates portable documents that do not need to access the web in order to pick up CSS classes to handle formatting. These are generated by this application and travel inside the HTML or PDF document.

#64--HNDBULKMAILBATCHER.APP

This "CHT Utility Application", CHT Bulk Mail Batcher, is a batch-oriented approach to email sending via SMTP from Clarion applications or from DOS batch files using one or the other of two CHT Command Line utility applications called HNDMAILSMTP.EXE and CHTSNAPSMTP.EXE.

It is important for HTML email to use internal style sheets so that the email, on arriving in the recipient's inbox, does not need to request external style sheets from the web. It is therefore deemed "safe" by email clients and it displays immediately, like text mail, without the user needing to click any kind of "allow" switch.

This application illustrates several "_mail_" XML2HTML example templates that allow the developer to change every important aspect of numerous useful HTML style sheets so that different "looks" can easily be incorporated into different HTML-generating-procedures. To create HTML outputs with new and different looks, simply add your own CSS styles, or modify ours, by adjusting CSS classes, and by adding to the various "sections" incorporated into our example CSS classes.

Note that HNDBULKMAILBATCHER.APP includes the following "Snap-Ins": CHTSNAPEDIT.EXE, CHTSNAPSMTP.EXE, HNDMAILSMTP.EXE, HNDPREVIEWER.EXE and HNDXML2HTMLGEN.EXE.

It also includes the following support DLLS: CLARUNEXT.DLL (only available to Clarion 10/11 Enterprise) and HNDCAPCON.DLL

#65--HNDBULKNETMAILPROMO.APP

This "CHT Utility Application", CHT Bulk Net Mail Promo, is a HNDNETSMTP.DLL-based approach to HTML-email-sending via SMTP from Clarion applications. It shares the same XML-based mail "template" files used by HNDBULKMAILSMTP.APP.

This application processes the HTML-email directly via the above-mentioned DLL, rather than by starting an executable batch utility. Email creation and generation features, and XML and HTML source files are idential to those provided in HNDBULKMAILBATCHER.APP for cross-compatibility. Sample "_mail_" .XML files have been provided for selection and testing.

Note that HNDBULKNETMAILPROMO.APP includes the following "Snap-Ins": CHTSNAPEDIT.EXE, HNDPREVIEWER.EXE and HNDXML2HTMLGEN.EXE. It also includes the following support DLLS: HNDNETSMTP.DLL and HNDCAPCON.DLL

Revised CHT C#
** Batch-Bots **

** CHTSNAPZIP.EXE - A CHT Snap Utility ** Version: [23.19.08.05]
** (©) 2019 The Clarion Handy Tools Page - www.cwhandy.ca

-- The ZR parameter recurses subdirectories and accepts 3 inputs.
-- It produces a zip with folder names included inside the zip.
-- The second input may include a target path for placement of the output zip file.
-- When no zip target path is given, the zip file is created in the same directory
-- as the CHTSNAPZIP.EXE executable.
-- The "rootdir" parameter used without a mask must end with a backslash.
-- [mask] is optional after the backslash [e.g. \hnd*.tps] to filter files.

chtsnapzip <zr> <[\path\]zipfilename> <\sourceroot\[mask]>

-- The ZZ parameter skips subdirectories and accepts 3 inputs.
-- It produces a flat zip without the folder names in the zip.
-- The second input may include a target path for placement of the output zip file.
-- When no zip target path is given, the zip file is created in the same directory
-- as the CHTSNAPZIP.EXE executable.
-- The "sourcedir" parameter used without a mask must end with a backslash.
-- [mask] is optional after the backslash [e.g. \hnd*.tps] to filter files.

chtsnapzip <zz> <[\path\]zipfilename> <\sourcedir\[mask]>

-- The ZL parameter lists zip contents and accepts 2 inputs.
It produces a comma-delimited list of zip files for pickup by calling apps.

chtsnapzip <zl> <[\path\]zipfilename>

-- The ZF paramter list zip contents and accepts 2 inputs.
It produces a fully formatted list intended for easy reading from the DOS console.

chtsnapzip <zf> <[\path\]zipfilename>

-- The UZ parameter unzips the zip file. It accepts 3 inputs.
-- The second input may include a full path to the zip file.
-- When no zip path is given, the zip file is assumed to be located
-- in the same directory as the CHTSNAPZIP.EXE executable.
-- The "targetdir" parameter used without a mask must end with a backslash.
-- [mask] is optional after the backslash [e.g. \hnd*.tps] to filter files.

chtsnapzip <uz> <[\path\]zipfilename> <\targetdir\[mask]>

** CHTSNAPZIP.EXE - A CHT Snap Utility ** Version: [23.19.08.05]

We've revised CHTSNAPZIP.EXE by adding new paramter "zf", the purpose of which is to display zip file contents formatted). This outputs a console-formatted version of the zip contents. The existing paramter "zl" (i.e. zip contents list) outputs a comma delimited list of the zip contents, designed to be picked up and parsed by a Clarion application running CHTSNAPZIP.EXE (eg: HNDBACKUPCONFIGSNAP.APP)

Example command-line:
chtsnapzip zf chtsetupc10.zip

Example output resulting from ZF command line:

CHTSNAPZIP.EXE - A CHT Snap Utility ** Version: [23.19.08.02]
(0001) "chtsetupc10.exe" (3/27/2019 4:12 PM) (Cmpr Sz: 1404742) (Orig Sz: 3725624)

(0002) "cht_code_sign_one.cer" (2/21/2019 5:42 PM) (Cmpr Sz: 1018) (Orig Sz: 1374)

** HNDMAILSMTP.EXE

This "CHT Batch Bot" application uses CHT Native SMTP mail. It is not dependent on the host hardware having a MAPI-compliant email client. This application requires Clarion's CLARUNEXT.DLL but is otherwise stand-alone.

Further it is dependent on correct configuration of a valid SMTP email setup with UserName, Password, Email Server and Email Return Address. Our template and SMTP classes provide a configuration function with user-controllable registry location setttings.

HNDMAILSMTP.EXE source code, because it is in Clarion .APP format, is included as a standard part of the CHT toolkit, provided both in .APP format as well as ready-to-run, in .EXE format.

New CHT C#
** Batch-Bot **

CHTSNAPDISK.EXE

This "CHT Batch-Bot" is a command-line disk information utility.

Example command-line:
chtsnapdisk --help

(©) The Clarion Handy Tools Page
CHT Snap Disk -- Version: 23.19.08.04

These separate DOS command-line inputs are required to obtain
disk or processor information.

To display CHTSNAPDISK.EXE instructions to console:
chtsnapdisk --help, -help, or help

To display full disk information to console:
chtsnapdisk --info, -info, or info

To generate full disk information to file: chtsnapdisk.txt.
chtsnapdisk --list, -list or list

To generate full disk information to file: chtsnapdisk.txt,
and open with chtsnapedit.exe:
chtsnapdisk --listedit, -listedit or listedit

To display processor unique ID to console:
chtsnapdisk --processor, -processor or processor

To change the LABEL of the designated drive number,
Drive 0 is assumed if [OPT] "DrvNUM" parameter is omitted:
chtsnapdisk --label, -label or label "Your label inside quotes" [DrvNum]

To display free space information of all drives to console:
chtsnapdisk --free, -free or free

CHT Snap Disk -- Version: 23.19.08.04

 

August 11, 2019

Build 23C.02.00 Features
HNDAPPS "shipping" apps count
now raised from 56 apps to 60 apps.

Find these in the HNDAPPS directory below your Clarion 10 or Clarion 11 installation. eg: c:\clarion10\hndapps\ or c:\c10\hndapps\ etc. depending on what your Clarion10/Clarion11 root is called. Apps with the "CHT UTILITY" label are also available pre-compiled in your \accessory\bin\ directory, source code in \hndapps\.

*** Apps reintroduced this build
to the HNDAPPS shipping apps collection ***

#57--HNDZIPNEMAILSMTP.APP --Build a multi-file/multi-subdirectory zip and mail by CLARION SMTP (UTILITY)

#58--HNDZIPNEMAILNET.APP -- Build a multi file/multi subdirectory zip and mail by NET SMTP (UTILITY)

#59--HNDZIPNEMAILCDO.APP -- Build a multi file/multi subdirectory zip and mail by CLARION CDO (UTILITY)

#60--HNDZIPNEMAILMAPI.APP --Build a multi file/multi subdirectory zip and mail by CLARION MAPI (UTILITY)

CHT C# COM DLL Reversions

HNDNETMAPI.DLL Reversioned to 23.19.08.01
HNDNETSMTP.DLL Reversioned to 23.19.08.01
HNDNETZIPPER.DLL Reversioned to 23.19.08.01
HNDNETFTP.DLL Reversioned to 23.19.08.01
HNDNETDATETIME.DLL Reversioned to 23.19.08.01
HNDDRIVEDATA.DLL Reversioned to 23.19.08.01
HNDWLANAPI.DLL Reversioned to 23.19.08.01

CHT C# BATCH BOT Reversions

CHTSNAPMAPI.EXE Reversioned to 23.19.08.01
CHTSNAPSMTP.EXE Reversioned to 23.19.08.04
CHTSNAPZIP.EXE Reversioned to 23.19.08.01
CHTSNAPEDIT.EXE Reversioned to 23.19.08.01
CHTSNAPGET.EXE Reversioned to 23.19.08.01
CHTSNAPSEND.EXE Reversioned to 23.19.08.01
HNDCLEAN.EXE Revsersioned to 23.19.08.01

CHT Batch Bot Revisions

HNDMAILSMTP.EXE has been revised slightly to display the results of a send or a failure to send by popping up the results log and help text file using CHTSNAPEDIT.EXE.

A new [OPT] parameter "--silent" has been added to suppress the popup result log. Use this in send situations where multiple email addresses are used, or HNDMAILNET.EXE is used in a loop to send multiple email addresses.

HNDMAILMAPI.EXE has been revised slightly to conform to the same parameter set used by HNDMAILSMTP.EXE. It now also pops up the results log file and help text file using CHTSNAPEDIT.EXE.

A new [OPT] parameter "--silent" has been added to suppress the popup result log. Use this in send situations where multiple email addresses are used, or HNDMAILNET.EXE is used in a loop to send multiple email addresses.

HNDMAILCDO.EXE has been revised slightly to conform to the same parameter set used by HNDMAILSMTP.EXE. It now also pops up the results log file and help text file using CHTSNAPEDIT.EXE.

A new [OPT] parameter "--silent" has been added to suppress the popup result log. Use this in send situations where multiple email addresses are used, or HNDMAILNET.EXE is used in a loop to send multiple email addresses.

HNDMAILNET.EXE has been revised slightly to conform to the same parameter set used by HNDMAILSMTP.EXE It now also pops up the results log file and help text file using CHTSNAPEDIT.EXE.

A new [OPT] parameter "--silent" has been added to suppress the popup result log. Use this in send situations where multiple email addresses are used, or HNDMAILNET.EXE is used in a loop to send multiple email addresses.

HNDZIPNET.EXE has been revised slightly.

A new [OPT] parameter "--silent" has been added to suppress the popup result log. Use this in send situations where multiple files are zipped in a loop from a Clarion application or a windows batch file.

HNDSLFCMD.EXE has been revised to perform a 100% secure-compressed upload when files are dragged and dropped on its icon via Windows Explorer. Configure one or more of its 10 configuration dialogs, with server IP and username, password and target directory, and then select that dialog when asked after drag-dropping files on HNDSLFCMD.EXE's desktop icon.

Use this with one or more HNDSLFSV.EXE (server) apps configured with server UserName/Password required before upload files are accepted. All dropped files are placed in the server directory or below the server directory as indicated on the HNDSLFCMD.EXE's target directory field.

Secure HTTP File Transfer

We've redesigned CHT file client example application HNDSFCL.APP to provide fully-secured file upload and download services to HNDSLFSV.APP or any app you derive from HNDSLFSV.APP.

First of all, HNDSLFCL.APP (as before) requires you to use a server-level, username and password to log into HNDSLFSV.APP. This denies upload/download permission to HNDSLFCL.APP unless the operator has the username, password values established on the HNDSLFSV.APP variant with which it is being paired.

Next, the client now has an "Encrypt/Compress" switch which when checked, encrypts and compresses the upload/download file using an internally generated key. All HTTP header values of any importance to transfer security are also encrypted. The result is transfer security equivalent to using HTTPS tunnelling via HTTP. AND, automatic file compression increases transfer speed by a factor of X3 or X4.

Transfer files safetly to local network computers, WAN computers and across the internet with assurance that your transfer information is safely encrypted.

Second of all, HNDSLFCL.APP (new feature) now has multi-file capability. Select one or more files from your disk and upload or download them to HNDSLFSV.APP.

CHT SNAP Revisions

CHTSNAPSMTP.EXE has been revised and reversioned

CHTSNAPSMTP.EXE has been revised and reversioned in this build to account for the possibility that the encrypted configuration values UserName and UserPassword may have been stored some time in the past as non-Base64 values.

In this build, non-Base 64 values stored earlier in these two configuration fields, are ignored and treated as blank field values.

Running the configuration dialog with command line: CHTSNAPSMTP --config will therefore ignore illegal values and present a blank entry control for these fields.

Command line : CHTSNAPSMTP --rcpt

Configures and activates for read-receipt request from the email recipient

Command line: CHTSNAPSMTP --norcpt

Configures and de-activiates read-receipt request from the email recipient Version number advanced to 23.19.08.04

Command line docs for CHTSNAPSMTP.EXE now are as follows:

** CHTSNAPSMTP.EXE ** (c) 2019 The Clarion Handy Tools Page
-- Three or four DOS command-line inputs are required
-- in order to send text or html mail with optional attachments:
-- CHTSNAPSMTP "TO" "SUBJECT" "MSG.TXT" OR "MSG.HTML" ["ATTACH.FILE"]
-- Inputs with spaces or extended characters use double quotes.
-- Otherwise, inputs may be provided without surrounding double quotes.
-- Individual inputs must be separated by one or more spaces.
-- ATTACH.FILE is optional. It represents optional attachment file(s).
-- CHT Snap SMTP must be configured before mail can be sent.
-- Type "CHTSNAPSMTP --config" at the DOS prompt to configure.
-- Mail results are written to the console and to chtsnapsmtp.log.
-- MSG.TXT or MSG.HTML and ATTACH.FILE [OPT] may include full paths
    to folders.
-- Multiple TO addresses may be separated with either semi-colons or commas.
-- Multiple attachments may be separated with either semi-colons or commas.
-- Issue "--rcpt" alone on command line prior to sending for read-receipt.
-- Issue "--norcpt" prior to sending to cancel read-receipt setting.
** CHTSNAPSMTP.EXE ** Version: [23.19.08.04] **

CHTSNAPMAPI.EXE has been reversioned

CHTSNAPMAPI.EXE has been reversioned. We tested it at our end to confirm that it works OK on a Windows 64 Professional with the two different email client settings that we had available:

#1 Windows Live Mail = OK,
#2 Windows Outlook (2013) = Ok
Version number advanced to 23.19.08.01

Command line docs for CHTSNAPMAPI.EXE now are as follows:

** CHTSNAPMAPI.EXE ** (c The Clarion Handy Tools Page - www.cwhandy.ca)
-- Three or four command-line inputs are required:
-- CHTSNAPMAPI "TO" "SUBJECT" "MESG.TXT OR MESG.HTML" ["ATTACH.FILE"]
-- Inputs with spaces or extended characters must be surrounded by
    double quotes.
-- Otherwise, inputs may be provided without surrounding double quotes.
-- ATTACH.FILE is optional. This option represents optional attachment file(s).
-- Mail results are written to standard output, namely the console.
-- MESG.TXT, MESG.HTML and ATTACH.FILE may include full paths to different
    folder locations.
-- Multiple TO addresses may be separated by either semi-colons or commas.
-- Multiple attachments may be separated by either semi-colons or commas.
** CHTSNAPMAPI.EXE ** Version: [23.19.08.01] **
Query Builder Icons

ExplorerBrowse (EXPB), HandyMarkerBrowse (HMB) and ListBoxBrowseExtender (LBX) all have template code to automatically check ApplicationImagesEx check boxes corresponding to 4 icons displayed on the CHT QueryBuilder interface. This includes the images inside your exe. These switches can also be checked manually by simply visiting the ApplicationImagesEx template and checking the boxes.

ApplicationImagesEx (AIEX), lets you change the images inlcuded by the template beside each of the checkboxes. In this way, the images on CHT QueryBuilder can be controlled by the developer.

In this build update we've also added similar template code (as in EXPB, HMB and LBX) to LocatorOverRideControl (LORC) template. Now all CHT browse templates will provide easy, automatic, customization of the CHT QueryBuilder interface from our templates.

Secure HTTP File Transfer

We've redesigned CHT file client example application HNDSFCL.APP to provide fully-secured file upload and download services to HNDSLFSV.APP or any app you derive from HNDSLFSV.APP.

First of all, HNDSLFCL.APP (as before) requires you to use a server-level, username and password to log into HNDSLFSV.APP. This denies upload/download permission to HNDSLFCL.APP unless the operator has the username, password values established on the HNDSLFSV.APP variant with which it is being paired.

Next, the client now has an "Encrypt/Compress" switch which when checked, encrypts and compresses the upload/download file using an internally generated key. All HTTP header values of any importance to transfer security are also encrypted. The result is transfer security equivalent to using HTTPS tunnelling via HTTP.

The key changes with every upload, no hard-coded key, and any single key is never used more than once.

Further, automatic file compression increases transfer speed by a factor of X3 or X4.

Transfer files safetly to local network computers, WAN computers and across the internet with assurance that your transfer information is safely encrypted.

Second of all, HNDSLFCL.APP (new feature) now has multi-file capability. Select one or more files from your disk and upload or download them to HNDSLFSV.APP.

Easy, Fast, Secure. Kiss insecure FTP goodbye forever.

Contact Us

Click the link below to contact us by email.
It will start your email client with our email address inserted:

Click To Contact Us