LARGE_ADDRESS (Idea suggested by Didier Le Duc)
All 32 bit applications running on Windows are, by default, limited to 2GB of RAM. That's by no means optimal, especially for BIG apps or multi-threaded apps.
You can give your 32 bit Clarion 10/Clarion 11 and later apps access to 4GB of RAM, if your application is running under a 64 bit version of Windows.
We discovered, on implementing and testing this, that this feature really gives CHT Servers an extra speed and robustness boost. The speed improvement becomes especially clear when several send-threads are running simultaneously due to busy web traffic. Other apps that use a lot of threads, for example HNDCMP.APP and HNDSETUP.APP also appear to be faster, wherever multiple threads are involved.
The LARGE_ADDRESS statement is added to the application's EXP file by a new sub-dialog in CHT global template AACHTControlPanel.
To enable this setting, visit our global template AACHTControlPanel -> Config Tab -->Pragma Tab --> Use LARGE_ADDRESS Setting? = ON
WOW64 enables 32-bit applications to take advantage of the 64-bit kernel. Therefore, 32-bit applications can use a larger number of kernel handles and window handles. However, 32-bit applications may not be able to create as many threads under WOW64 as they can on x86. On some processors, there is less virtual address space available, and each thread contains a 64-bit stack (usually 512K). On the x64 processor, each 32-bit application receives 4 GB virtual address space in the WOW64 environment, if the application has the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set in the image header.
Before the end of Q1-2020, we'll introduce a "layered" price structure, in addition to our normal full-toolkit price structure. This layered-by-functionality design, will make it fairly simple for new and existing developers to choose and pay for only the layers they intend to use and to add-in extra layers as needed. Though we'll continue to encourage developers, to opt for the full toolkit option, by making that option the most cost effective, on a cost-per-template basis.
We've now worked out exactly what combinations of templates will constitute the various layers. See the categories below:
LBX* - (L)ist(B)ox Browse E(X)tender = CHT-Only Browse
HMB* - (H)andy (M)arker (B)rowse = CHT+ABC Browse
EXPB* - (EXP)lorer(B)rowse = CHT+ABC Browse
LOCR* - (L)ocator (O)ver(R)ide (C)ontrol = CHT+ABC Browse
JumpStart* - Some overlap with other layers
As an expression, having "2020 vision" means seeing as clearly as it is possible to see, understanding as deeply as it is possible to understand.
That is our theme and our comittment as a Clarion Tools Builder, for the upcoming CHT Builds starting with build 24A.00.00 targeted for release on, or near, December 22, 2019.
For openers, we're in the process of re-categorizing our templates into groups that will help developers more easily grasp what CHT templates can do for their apps.
Even for full toolkit subscribers, we're making it possible to switch OFF layers of CHT templates that are not in use in a given set of apps and switch ON layers of CHT templates that are in use in another set.
Before the end of Q1-2020, we'll introduce a "layered" price structure, in addition to our normal full-toolkit price structure. This layered by-functionality design, will make it fairly simple for new and existing developers to choose and pay for only the layers you intend to use and to add-in extra layers as needed.
We're still working out exactly what combinations of templates will constitute the various layers, be but we're anticipating approximately 8-10 layers from the categories below.
BROWSE SUPPORT LBX* (15)
BROWSE SUPPORT HMB* (16)
BROWSE SUPPORT EXPB* (13)
BROWSE SUPPORT LORC* (4)
XML2HTML SUPPORT (2)
HTTP SERVER T234 SUPPORT (29)
HTTP SERVER T1 SUPPORT (21)
HTTP CLIENT SUPPORT (21)
ZIP SUPPORT (14)
INSTALLATION SUPPORT (4)
JUMPSTART* SUPPORT (85)
SNAPIN SUPPORT (21)
FTP CLIENT SUPPORT (17)
DEPRECATE CANDIDATE (17)
TOTAL USER-SWITCHABLE TEMPLATES (279)
LBX* - ListBox Browse EXtender = CHT-Only Browse
HMB* - Handy Marker Browse = CHT+ABC Browse
EXPB* - EXPlorerBrowse = CHT+ABC Browse
LOCR* - Locator OverRide Control = CHT+ABC Browse
JumpStart* - Some overlap with other layers
For those who are renewing an expired CHT toolkit, you will be pleased to know that the "90 days from expiration" rule has been waived so that even if your toolkit has been expired for months or years before that, as long as you're still in our data base as having previously owned our toolkit, you can use the "renewal" price to obtain the full toolkit.
The renewal price for the full toolkit has been reduced somewhat to $225.00 per year.
The "new" price, for the full toolkit now applies only to developers who have never subscribed before. That "new to the CHT toolkit" price is now $299.
Full toolkits for present subscribers will come with all layers "turned" on and availalble as always.
One exception to that is the DEPRECATE CANDIDATE category which is turned off by default, but even these templates are still completely available, if/when required. They haven't been removed, only switched out from automatic registration.
Our tool kit Control Panel will provide a series of switches that provide for switching in, or out, any CHT functionality layers, such as the deprecation candidates, or other functionalities, not currently required or currently being introduced to any application.
Just to repeat, full toolkit subscribers get EVERYTHING as always, all 480+- templates as usual, even the ones we think should be deprecated.
The "Templates by Category" html page is up on our site already here:
We hope you find this category list clearer, and easier to drill down into, in keeping with our 2020 theme of greater clarity and ease of understanding.
Feel free to suggest refinements to this if like.
This release we have revisions of three CHT "Batch-Bots" as well as two new test apps that illustrate how to connect to and control two of these bots from your Clarion applications.
One of these Batch-Bots, HNDXML2HTMLGEN.APP already has several apps that use it regularly to leverage its capabilities. While this bot has been internally revised somewhat to bring its interface more into line with the our other batch-bot apps, we're bringing it to your attention here for other reasons that we'll make clear later in this discussion.
We also have an exciting and useful addition for all types of CHT servers, a feature we call: "Safety Switch". This extended security feature may be optionally incorporated into existing CHT servers or new servers from a CHT template named: "BrowserServerInitializationControls".
We've incorporated the Saftey Switch feature into 6 shipping example servers that we'll further discuss and document, below.
HNDSLFCMD.APP is a command-line HTTP tool that can send files to and fetch files from any standard CHT HTTP site managed by a Type 4 CHT Server such as HNDSLFSV.APP or HNDSLFSVFX.APP - servers discussed below.
A username and password are required for server access to be given and communications with the server are always automatically encrypted.
The application can be called from one of your Clarion applications using Clarion RUN or for more powerful interactions, CHTSnapCall class.
However, a Windows batch file or a Windows .VBS script is perfectly capable of providing reliable file upload/download services using this CHT BOT.
A new application, HNDTESTCHTBOTSLFCMD.APP has been provided to illustrate how developers might incorporate HNDSLFCMD.EXE into a Clarion application via the global SNAP-IN interface template "ApplicationSnapIns".
HNDMAKEHZO.APP builds compressed/encrypted file containers based on Clarion .TPS files. These file containers (.HZO extension) may be used like zip files, except they are relational, making them easy to browse, add to, or extract from in a non-sequential access fashion using Clarion, with CHT templates, classes and jumpstarts built expressly for that purpose.
A new application, HNDTESTCHTBOTMAKEHZO.APP illustrates how to incorporate HNDMAKEHZO.EXE into a Clarion application via the global SNAP-IN interface template "CHT ApplicationSnapIns".
HNDXML2HTMLGEN.APP application runs from various other CHT Batch-Bots and Snap-Ins in order to transform user-embedded XML template files into stand-alone HTML pages and forms.
It may also be run directly from a DOS batch file or developer applications, needing to implement XML to HTML transformation processing. CHT Snap-Edit, a C# app, included with our toolkit, calls this HTML generator exclusively to transform XML template files into HTML before previewing.
Our new safety switch is applied to the server via the main CHT Server template called BrowserServerInitializationControls, on the "CTL" tab under the subdialog "User-Installed Server Controls". Here, see "Set Three", item "Server Safety Switch".
This brand new switch, when installed and checked to the ON position, vastly extends the server's ability to detect invalid requests, and server exploits of various sorts that are intended to do damage, sniff for data or impede server function. CHT Developers can implement this, even on existing servers, in under 10 minutes, from our template.
Over the last number of years we've been tracking and logging a wide variety of exploits most of which our servers are immune to anyway, but this template extension adds a substantial amount of protection from garbage requests, web bots and data exploits.
When an exploitive request comes in, with the "Safety" switch ON, our server simply closes the connection and ignores the request, before server time, bandwith and reqources are expended.
HNDSLFSV.APP (Added "Safety" Switch)
HNDSLFSVFX.APP (Added "Safety" Switch)
HNDTEAMDOCSERVER.APP (Added "Safety" Switch)
HNDTYPE4SERVERPEOPLE.APP (Added "Safety" Switch)
HNDTYPE4UCRSERVERTEMPLATES.APP (Added "Safety" Switch)
Click the link below to contact us by email.
It will start your email client with our email address inserted: