CLASS: | HNDConfig |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Application Configuration |
DEMO: | HNDSETUP.APP HNDMLSMTP.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDCONFG.INC |
CODE: | HNDCONFG.CLW |
TEMPLATE: | EmbedHndConfigFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is used extensively by CHT either directly or indirectly (derived by other classes) to store access configurations for FTP, HTTP and SMTP as well as specific configuration setups for CHT Batch-Bots and CHT Snap-Ins that may require them. There are GET, SET and DISPLAY functions for each of the relevant protocols, Batch-Bots and Snap-Ins.
"GET" programmatically recalls existing settings, "SET" programmatically stores new or changed settings and "DISPLAY" provides an interactive dialog for end-user interaction with settings to provide for initial configuration of an application or to change an existing application configuration.
By default these configurations are stored under a configuration tag HPROP:CHTools.
Developers have control over this default behaviour by calling configuration location settings OBJ.SetDefaultConfigLocation('YourConfig') early on in the initialization of any configuration class. Individual product configurations are stored in separately configurable locations under the above setting, via the xRegID parameter in each of the SET,GET and DISPLAY functions.
Default Location Examples:
HKEY_CURRENT_USER\Software\cht\maildefault
and
HKEY_CURRENT_USER\Software\cht\mailssl
Custom Location Examples:
HKEY_CURRENT_USER\Software\YourConfig\yourmaildefault
and
HKEY_CURRENT_USER\Software\YourConfig\yourmailssl
CHT Classes that utilize the HNDConfig class by derivation or composition are: HNDHTTP, HNDINETFTP, HNDNETFTP, HNDPOP, HNDNETSMTP, HNDSMTP.
CLASS: | HNDIni |
STATUS: | Current |
PARENT: | None |
COMPOSED: | INIClass(ABC) HNDAppio HNDBinFileIO |
CATEGORY: | Application Configuration |
DEMO: | All_CHT_Demo_Apps |
DLL: | None |
TLB: | None |
HEADER: | HNDINI.INC |
CODE: | HNDINI.CLW |
TEMPLATE: | INIFile INIFileProcedure IniTableIOProcedure |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class extends the INI File/Registry capabilities of your application beyond what is already provided by the Clarion INIClass. It primarily supports dynamic file/table naming (ISAM or SQL) so that the names, and details of tables used by your application are determined at run time rather than being hard coded. This class is added to your application by adding CHT's INIFile template to your Global Extensions.
The latest implementation allows for INI I/O redirection to a dictionary table via easy to-use settings provided by the CHT INIFile template.
CLASS: | HNDBinFileIO |
STATUS: | Important |
PARENT: | HNDError |
COMPOSED: | HNDBuffer |
CATEGORY: | Binary File Access |
DEMO: | Most |
DLL: | None |
TLB: | None |
HEADER: | HNDBINIO.INC |
CODE: | HNDBINIO.CLW |
TEMPLATE: | EmbedHNDBinFileIOFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDBinFileIO provides binary-level file access, both read and write. Read any file into memory, modify it at byte level and write it back or create binary or text files from scratch.
HNDBinFileIO provides an implementation of memory-mapped files that can be created by one application and read by another, allowing simultaneously-running applications to communicate with one another via an in-memory file that never hits the drive.
This class provides GUID-creation functionality. HNDBinFileIO is used via composition in the following CHT header modules: hndini.inc, hndshell.inc, hndspell.inc and hndutil.inc.
EXAMPLE APPLICATIONS:
HNDXML2HTMLGEN.APP, HNDBASE64CVT.APP, HNDCPYDM.APP, HNDENCRYPT.APP, HNDSEARCH.APP, Dozens More...
CLASS: | HNDDosFile |
STATUS: | Important |
PARENT: | HNDCompress |
COMPOSED: | None |
CATEGORY: | Binary File Access |
DEMO: | HNDSETUP.APP |
DLL: | CLADOS.DLL |
TLB: | None |
HEADER: | HNDDOSF.INC |
CODE: | HNDDOSF.CLW |
TEMPLATE: | EmbedHndDosFileFunctions GlobalIncludeHNDDosFileFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDDosFile is a low-level, binary file access class based on Clarion's ClaDOS.DLL.
HNDDosFile is used to open, read, modify, write, process and create binary files of all types from .TXT, to .EXE to .ZIP and more.
To get an understanding of the power of this class and classes associated with it, for instance, HNDCompress, take some time to get to know HNDSETUP.APP our .HZO container builder.
OTHER EXAMPLE APPLICATIONS:
HNDXML2HTMLGEN.APP, HNDBASE64CVT.APP, HNDCPYDM.APP, HNDENCRYPT.APP, HNDSEARCH.APP, More...
CLASS: | HNDBrowse |
STATUS: | Current |
PARENT: | HNDBrwFilter HNDParse HNDError |
COMPOSED: | HNDSizes HNDGreenBar HNDStepClass |
CATEGORY: | Browse Building Classes |
DEMO: | HNDSCHOOL.APP HNDACCES.APP More |
DLL: | None |
TLB: | None |
HEADER: | HNDBROWS.INC |
CODE: | HNDBROWS.CLW |
TEMPLATE: | ExplorerBrowse LocatorOverRideControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDBrowse class provides the basis for CHT browse extension templates ExplorerBrowse and LocatorOverRideControl.
While these templates provide a developer interface for extending the capabilities of ABC browses, this class (HNDBrowse) provides, in abstract, all of the functionalities delivered by those templates. Browse extension services as widely varied as dynamic sorting, real-language querying, header-click browse re-ordering, greenbar, column swapping and more.
The extremely broad range of browse-extension features delivered by the above-mentioned templates are either implemented in this class or are derived by this class from other, lower-level CHT classes either via derivation (HNDBrwFilter, HNDParse, HNDError) or by composition (HNDSizes, HNDGreenBar, HNDStepClass).
CLASS: | HNDFileLoadBrowse |
STATUS: | Current |
PARENT: | HNDBrwFilter HNDError |
COMPOSED: | HNDGreenBar |
CATEGORY: | Browse Building Classes |
DEMO: | HNDSCHOOL.APP HNDPEOPLE_LBX.APP HNDLBXDM.APP HNDLBXSQL.APP More |
DLL: | None |
TLB: | None |
HEADER: | HNDFLBRW.INC |
CODE: | HNDFLBRW.CLW |
TEMPLATE: | ListBoxBrowseExtender HandyMarkerBrowse HandyWebClientBrowseProcedure ClientServerBrowseListBox More |
DESCRIPTION:
©CHT (Clarion Handy Tools)
SUMMARY OF KEYSTROKES USED FOR IN-QUEUE RECORD MARKING
** MouseLeft Mark record in single record mode.
** ShiftMouseLeft Mark end of range between Selected and row clicked.
** CtrlShiftMouseLeft Continues marking from LastSelected to click position.
** CtrlMouseLeft Toggle record marked/unmarked.
** CtrlSpace Same effect as CtrlMouseLeft.
** ShiftUp Mark next record up from selected.
** ShiftDown Mark next record down from selected.
** UpKey Switch to single record mode and move cursor up.
** DownKey Switch to single record mode and move cusror down.
** CtrlUp Move cursor up with no marking or unmarking.
** CtrlDown Move cursor dn with no marking or unmarking.
** ShiftPgDn Mark all from selected to top of current page.
** ShiftPgUp Mark all from selected to end of current page.
** ShiftHome Mark all from selected to first record.
** ShiftEnd Mark all from selected to last record.
** HomeKey Unmark all and select first record.
** CtrlHome Unmark all and select first record.
** EndKey Unmark all and select last record.
** CtrlEnd Unmark all and select first record.
** PgUpKey Unmark all and select last record on page.
** PgDnKey Unmark all and select first record on page.
** CtrlA Select all
** CtrlH "H" how many selected.
CLASS: | HNDMarkerBrowse |
STATUS: | Current |
PARENT: | HNDError HNDFileLoadBrowse HNDBrwFilter HNDParse |
COMPOSED: | HNDUtil |
CATEGORY: | Browse Building Classes |
DEMO: | HNDSCHOOL.APP, HND3.APP, HNDMARKERSQLTEST.APP, Many_More |
DLL: | None |
TLB: | None |
HEADER: | HNDMRKBR.INC |
CODE: | HNDMRKBR.CLW |
TEMPLATE: | HandyMarkerBrowse ListBoxBrowseExtender HandyWebClientBrowseProcedure ClientServerBrowseListBox ClientServerBrowse_XCL More |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The CHT Class, HNDMarkerBrowse derives from HNDFileLoadBrowse, HNDBrwFilter, and HNDParse to implement fully queryable, ABC-Browses extended with single and multi record-marking capability.
Note that CHT distinguishes between "record-marking" and "record-tagging", both of which are implemented in various CHT templates and examples. Record-marking as delivered by this HNDMarkerBrowse class and its hosting HNDMarkerBrowse template, marks records in the browse queue using the built-in "Mark" field supplied in that queue by the ABC Browse template when it generates browse code from your design.
Browse-queue record markers as implemented in this HNDMarkerBrowse class, are therefore, temporary and are not reflected in the data file being browsed. This style of "record-marking" is not drive or network intensive as there is no "chatter" between the client browse and the data base tables while markers are being placed.
Record-Tagging on the other hand, writes tags into the data file and while these are recallable from one browse instance to the next, also requires ongoing "chatter" between the client browse and the data base as record tags are written into the data table(s).
This low-chatter characteristic of CHT file-loaded, record-markable browses, delivered by this HNDMarkerBrowse class, also makes this record-marking technique - derived from its parent class, HNDFileLoadBrowse - a perfect candidate for across-the-web Client-Server browses as delivered by ClientServerBrowse_XCL and its set of related templates.
SUMMARY OF KEYSTROKES USED FOR HANDYMARKERBROWSE IN-QUEUE RECORD MARKING
** MouseLeft Mark record in single record mode.
** ShiftMouseLeft Mark end of range between Selected and row clicked.
** CtrlShiftMouseLeft Continues marking from LastSelected to click position.
** CtrlMouseLeft Toggle record marked/unmarked.
** CtrlSpace Same effect as CtrlMouseLeft.
** ShiftUp Mark next record up from selected.
** ShiftDown Mark next record down from selected.
** UpKey Switch to single record mode and move cursor up.
** DownKey Switch to single record mode and move cusror down.
** CtrlUp Move cursor up with no marking or unmarking.
** CtrlDown Move cursor dn with no marking or unmarking.
** ShiftPgDn Mark all from selected to top of current page.
** ShiftPgUp Mark all from selected to end of current page.
** ShiftHome Mark all from selected to first record.
** ShiftEnd Mark all from selected to last record.
** HomeKey Unmark all and select first record.
** CtrlHome Unmark all and select first record.
** EndKey Unmark all and select last record.
** CtrlEnd Unmark all and select first record.
** PgUpKey Unmark all and select last record on page.
** PgDnKey Unmark all and select first record on page.
** CtrlA Select all
** CtrlH "H" how many selected.
CLASS: | HNDCompress |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Buffer, File And Memory Compression |
DEMO: | HNDSETUP.APP HNDZIPNEMAIL.APP More |
DLL: | None |
TLB: | None |
HEADER: | HNDCOMPRESS.INC |
CODE: | HNDCOMPRESS.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The CHT HNDCompress class, contained in HNDCOMPRESS.INC (Header module) and HNDCOMPRESS.CLW (Code module) provides string, buffer and memory compression directly.
File compression is accomplished via inheritance by CHT class HNDDOSFILE which can be attached globally to an application with template IncludeHNDDOSFileFunctions.
Memory compression is accomplished via inheritance by CHT class HNDDISK which can be attached globally to an application with template IncludeHNDDiskFunctions or procedure-locally using EmbedDiskFunctions.
CLASS: | HNDSqueeze |
STATUS: | Deprecated |
PARENT: | HNDError |
COMPOSED: | HNDBuffer |
CATEGORY: | Buffer, File And Memory Compression |
DEMO: | HNDZTEST.APP HNDZDEMO.APP |
DLL: | hndzlbex.dll |
TLB: | None |
HEADER: | HNDSQEEZ.INC |
CODE: | HNDSQEEZ.CLW |
TEMPLATE: | IncludeHNDDOSFileFunctions IncludeHNDDiskFunctions EmbedDiskFunctions |
DESCRIPTION:
This library and DLL are still available but have been replaced by CHT's HNDCOMPRESS class. See HNDCOMPRESS class.
The CHT HNDSqueeze class, contained in HNDSQEEZ.INC (Header module) and HNDSQEEZ.CLW (Code module) provides file and memory compression.
File compression is accomplished via inheritance by CHT class HNDDOSFILE which can be attached globally to an application with template IncludeHNDDOSFileFunctions. Memory compression is accomplished via inheritance by CHT class HNDDISK which can be attached globally to an application with template IncludeHNDDiskFunctions or procedure-locally using EmbedDiskFunctions.
CLASS: | HNDCDROMClass |
STATUS: | Current |
PARENT: | HNDUtil HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Burn CDROM Disks |
DEMO: | None |
DLL: | IMAPI2FS.DLL (WINDOWS_DLL) |
TLB: | HNDCDROM.TLB |
HEADER: | HNDCDROM.INC |
CODE: | HNDCDROM.CLW |
TEMPLATE: | EmbedHNDCDROMClass |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is built on MS Windows capabilities deriving from its IMAPI2FS.DLL. It enables your app to programmatically copy files and directories to a CD/DVD Drive containing a variety of CD media types. This functionality is contained in modules HNDCDROM.INC, HNDCDROM.CLW and HNDCDROM.TLB.
Apply HNDCDROMClass to your procedure with CHT template EmbedHNDCDROMClass.
CLASS: | HNDSnapCall |
STATUS: | Current |
PARENT: | HNDError HNDUtil |
COMPOSED: | HNDCaptureConsole HNDBinFileIO HNDConfig |
CATEGORY: | CHT Snap-In Clarion Interface |
DEMO: | HNDTESTCHTSNAPGET.APP HNDTESTCHTSNAPSMTP.APP HNDTESTCHTSNAPZIP.APP HNDTESTCHTSNAPMAPI.APP HNDZIPNEMAILSNAPMAPI.APP |
DLL: | HNDCAPCON.DLL |
TLB: | None |
HEADER: | HNDSNAPCALL.INC |
CODE: | HNDSNAPCALL.CLW |
TEMPLATE: | EmbedSnapCall |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The library, is being continually forward-developed to handle calls to existing, as well as in-development "CHT Snap-Ins" (C# executables) and "Batch Bots" (Clarion executables) of various kinds.
The base template to attach this class to your Clarion procedure is EmbedSnapCall.
This CHT class interfaces to the following Snap-In Items:
(1) CHTSNAPZIP.EXE, (2) CHTSNAPEDIT.EXE, (3) CHTSNAPSMTP.EXE,
(4) CHTSNAPMAPI.EXE, (5) CHTSNAPGET.EXE, (6) CHTSNAPCRYPT.EXE.
This CHT class interfaces to the following Batch-Bot Items:
(1) HNDMAILSMTP.EXE, (2) HNDMAILMAPI.EXE, (3) HNDMAILCDO.EXE,
(4) HNDSLFCMD.EXE, (5) HNDSLFCMDXSA.EXE, (6) HNDBASE64CVT.EXE,
(7) HNDENCRYPT.EXE, (8) HNDFTPNET.EXE, (9) HNDMAILNET.EXE,
(10) HNDMAKEHZO.EXE, (11) HNDZIPNET.EXE.
See: Batch Bot Apps
CLASS: | HNDComLibrary |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | COM Utility Library |
DEMO: | HNDMAILNET.APP HNDZIPNET.APP More |
DLL: | None |
TLB: | None |
HEADER: | HNDCOMLB.INC |
CODE: | HNDCOMLB.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDComLibrary is a COM-related library included as a function source in all other CHT libraries that interface to COM DLLs or COM OCXs. This library is not directly hooked into Clarion procedures via a template of its own. It is included as a source file by other COM-related libraries and is therefore not intended to be inserted into developers' procedures to provide services of the sort he/she might get from HNDDisk, for instance.
Examples of libraries using HNDComLibrary are: HNDCOMMapiControl, HNDCOMSlider, HNDCOMZipClass and many others. The demo applications cited are again using HNDComLibrary indirectly.
CLASS: | HNDCalcControl |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDAppIO |
CATEGORY: | Calculators |
DEMO: | HNDCALCULATOR.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDCALC.INC |
CODE: | HNDCALC.CLW |
TEMPLATE: | EmbedCalculatorFunctions HandyCalcEntryControl_ECF |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDCalcControl provides two different calculator formats that may be called via a simple function in your application.
A small, basic calculator is started with OBJ.HandyCalc(). A larger, more graphically sophisticated calculator, with an interchangeable skin, and a scrolling tape, is started with OBJ.HandyCalcTape().
CLASS: | HNDCaptureConsole |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Capture DOS Console |
DEMO: | HNDCMP.APP |
DLL: | HNDCAPCON.DLL |
TLB: | None |
HEADER: | HNDCAPCON.INC |
CODE: | HNDCAPCON.CLW |
TEMPLATE: | EmbedHNDCaptureConsole |
DESCRIPTION:
©CHT (Clarion Handy Tools)
A really good example of a "DOS Console Application" with which all Clarion developers are, or at least should be, familiar is CLARIONCL.EXE. From the DOS prompt, hand typed instructions on the "Command-line" or more likely, using a batch file, it is possible to generate, compile and even execute specific templates in the application. "Console" applications of this sort, output execution information to the "DOS Console", the normally black window that constitutes a direct interface to DOS.
With CHT's HNDCaptureConsole class, it is possible to "Capture" the DOS console in such a way that the black, DOS Console Window does not appear, and the execution output that would normally appear in that window is "Captured" and returned to your Clarion application as a string return value.
Another good example of how this class can be used by a standard Clarion application is HNDCMP.APP, better known as "CHT Clarion Project Builder". This application, in fact, runs CLARIONCL.EXE in a "captured" manner, and returns the full output that would noramlly appear in the Console window and stores it in an application YOURAPPNAMEHERE.LOG file.
CLASS: | HNDClarionDDE |
STATUS: | Current |
PARENT: | HNDError HNDDisk |
COMPOSED: | HNDCaptureConsole |
CATEGORY: | Capture DOS Console |
DEMO: | HNDCMP.APP |
DLL: | HNDCAPCON.DLL |
TLB: | None |
HEADER: | HNDCLDDE.INC |
CODE: | HNDCLDDE.CLW |
TEMPLATE: | EmbedClarionDDEFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
When the Clarion IDE moved from C6.3 to C7 and up, DDE (Dynamic Data Exchange) was dropped as the mechanism of outside control of the Clarion IDE from another application. This class was, at that time, re-oriented from DDE control of Clarion, to command-line control of Clarion.
Thus HNDClarionDDE, despite the "DDE" embedded in its name, incorporates CHT HNDCaptureConsole to interface from HNDCMP.APP, the CHT Clarion Project Builder, to CLARIONCL.EXE, in order to implement at the DOS Console level, command and control of various functionalities related to Compiling, Generating and Template Execution, provided by CLARIONCL.EXE.
This class is only used by HNDCMP.APP, as is EmbedClarionDDEFunctions, its hosting template. This class also incorporates HNDDisk from which it derives various low-level, disk-related capabilities such as writing out text-based .LOG files in which are stored the execution details returned from HNDCaptureConsole.Run().
CLASS: | HNDNetCapConClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Capture DOS Console |
DEMO: | Internal Only at Present |
DLL: | hndnetcapcon.dll |
TLB: | hndnetcapcon.tlb |
HEADER: | HNDNETCAPCON.INC |
CODE: | HNDNETCAPCON.CLW |
TEMPLATE: | Internal Only at Present |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is slated to eventually replace the functionality in the long-time CHT class called HNDCaptureConsole, which is used to console-capture the output from DOS-COMMAND-LINE executables like CHTSNAPZIP.EXE and numerous others.
The brand new DLL, HNDNETCAPCON.DLL is a C# net dll that does the same thing as the older, C++ HNDCAPCON.DLL, a dll which we expect will eventually become deprecated. We plan this deprecation to take place, not abruptly, but in a gradual way which slowly replaces the use of HNDCaptureConsole class with this HNDNetCapConClss and phases out the HNDCAPCON.DLL in a gradual, manner.
CLASS: | HNDAppHook |
STATUS: | Current |
PARENT: | None |
COMPOSED: | None |
CATEGORY: | Coding Assistance |
DEMO: | HNDSETUP.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDAPPHK.INC |
CODE: | HNDAPPHK.CLW |
TEMPLATE: | EmbedAppHookFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDAppHook class is unusual because, in and of itself, the code module contains no code.
All methods in this class are intended for overriding in the application procedure, hence the name "App Hook". See HNDSETUP.APP for an example use of HNDAppHook.
This class hooks into any standard Clarion procedure via template - EmbedAppHookFunctions - and provides named (though generic) embed points that can be made to perform almost any function required by the application.
Normally, hand-embedding into these functions is the most likely use, but conceivably, a template could embed functionality requested by the developer as well
.
CLASS: | HNDShellAutoComplete |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Coding Assistance |
DEMO: | HNDCLIENTSV.APP HNDFILSV.APP More |
DLL: | SHLWAPI.DLL (WINDOWS_DLL) |
TLB: | None |
HEADER: | HNDAUTOC.INC |
CODE: | HNDAUTOC.CLW |
TEMPLATE: | EmbedShellAutoCompleteFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This single-purpose class assists deveopers and users with remembering legally-used, and reusable, input values for a form field. When applied to an input control of type TEXT or ENTRY, it behaves like the URL address field in Microsoft Internet Explorer. Recently entered values that have been entered into similar fields present themselves in a dropdown for easy selection.
Available settings are:
** SetInputFile() pop up a list of files and/or paths
** SetInputUrl() pop up a list of web addresses or URLS
** SetInputAny() pop up a list of either of the above
Good example applications to examine and test this with, are HNDCLIENTSV.APP and HNDMTSNG.APP. The "Server Run Directory" field has been set as SetInputAny().
Empty this field and begin to type a path and by the time you type the 3rd character, a dropdown appears to allow selection of previously entered data from similar fields on your PC.
CLASS: | HNDDataAdapter |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDBuffer |
CATEGORY: | Data Access View To Queue |
DEMO: | HNDSRPRO.APP HNDSCRPT.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDRADAP.INC |
CODE: | HNDRADAP.CLW |
TEMPLATE: | EmbedHNDDataAdapterFunctions HandySourceInLineProcess_HSP |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDDataAdapter is a class, that in an abstract manner can read through a CLARION VIEW, with or without a view filter, and insert the data from that view into a queue. The target queue may be a basic queue containing data fields only, or a queue containing also color information fields as well as standard data fields.
The demo application HNDSRPRO.APP illustrates several browses that are based simply on a CLARION QUEUE without a ABC browse class below them. The queue is managed by a ListBoxBrowseExtender template, and looks for all intents an purposes, like a HandyMarkerBrowse. The queue is filled by a process which uses HNDDataAdapter to traverse one or more (joined) files by means of a Clarion View.
CLASS: | HNDDates |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Dates, Times And Calendars |
DEMO: | HNDCAL.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDDATES.INC |
CODE: | HNDDATES.CLW |
TEMPLATE: | EmbedDateFunctions HandyPopupCalendarButton More |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CHT HNDDates class is a full-function dates and times library that contains an amazing amount of functionality including, for example, two pop-up calendars with customizable, interfaces for North American, European, and Arabian-style calendar layouts.
Numerous HNDDates methods provide time/date operations that can perform date differentiation by time zone, leap year calculations, date and time wrap calculations, Julian dates, UTC dates, business day and more. This is the go-to library to manage dates and times in any Clarion application.
Example application: HNDCAL.APP which applies this class to a Clarion Window using CHT template EmbedDateFunctions.
CLASS: | HNDNetDateTimeClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Dates, Times And Calendars |
DEMO: | HNDNETDATETIMEDEMO.APP |
DLL: | HNDNETDATETIME.DLL |
TLB: | HNDNETDATETIME.TLB |
HEADER: | HNDNETDATETIME.INC |
CODE: | HNDNETDATETIME.CLW |
TEMPLATE: | EmbedNetDateTimeClasses |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The functionality in this class comes up from C# via a CHT COM dll called HNDNETDATETIME.DLL, which used with this class makes the DLL self-registering. If the DLL is not already registered with Windows COM at the time an app utilizing this class+dll it is registered with COM, causing the app to pause briefly and barely noticeably for a second or two and then continue running as usual. Once found registered on the running hardware, the auto-registration code in this class is skipped.
This library provides a set of low-level functions like GetFileDateUTC(), GetDayOfYear(),GetIsDaylightSavingTime(),GetIsLeapYear(),GetTimeZone() and 25 more that assist developer with date and time display and manipulation. See example: HNDNETDATETIMEDEMO.APP which applies this class to a Clarion window using template: EmbedNetDateTimeClasses.
Added WeekOfYearISO() to match the WeekOfYear() ISO implementation in HNDDATES.INC/.CLW
CLASS: | HNDDockingWindow |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Docking Window |
DEMO: | HNDSCRPT.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDDOCWN.INC |
CODE: | HNDDOCWN.CLW |
TEMPLATE: | EmbedDockingWindow |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class creates a docking window that may be inserted as a menu or jump-window inside a parent FRAME window. The template for this class does most of the work see: "EmbedDockingWindow".
CLASS: | HNDNetZipperClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Dot NET - File Compression |
DEMO: | HNDNETZIPDEMO.APP HNDZIPNET.APP HNDZIPNEMAILNET.APP More |
DLL: | HNDNETZIPPER.DLL |
TLB: | HNDNETZIPPER.TLB |
HEADER: | HNDNETZIPPER.INC |
CODE: | HNDNETZIPPER.CLW |
TEMPLATE: | HandyNetZipperControl EmbedNetZipFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class provides a wrapper for a CHT-developed .NET Dll called HNDNETZIPPER.DLL. The .DLL in combination with this wrapper class provide a full range of standard file zipping/unzipping services including bulk and single file operations. The .DLL requires a window with two messaging controls in order to operate. If you require invisible or background operations, hide or minimize the window hosting the HNDNETZIPPER.DLL.
A template called HandyNETZipperControl may be used to add this control to your application window. Demonstration apps are: HNDNETZIPDEMO.APP, HNDZIPNET.APP and HNDBACKUPCONFIG.APP.
CLASS: | HNDComMapiControl |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Email MAPI |
DEMO: | HNDEZMAPI.APP |
DLL: | MSMAPI32.OCX |
TLB: | HNDMAPI.TLB |
HEADER: | HNDMAPI.INC |
CODE: | HNDMAPI.CLW |
TEMPLATE: | HandyCOMMapiControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class serves as a COM wrapper for a Microsoft COM DLL called MSMAPI32.OCX. It provides basic MAPI connectivity for send/receive services using your installed email client (Outlook or Outlook Express). Developers may optionally utilize the email client's native interface or provide a custom interface of their own design.
Sending operations provide for TO, CC and BCC, single or multiple attachments and multiple addresses separated by semi-colons. The only real requirement to get this going is a working, correctly configured email client on the host machine.
Example application(s): HNDEZMAPI.APP. Template(s): HandyComMapiControl.
CLASS: | HNDIMail |
STATUS: | Current |
PARENT: | HNDIDial |
COMPOSED: | HNDDisk HNDBuffer HNDRegistry HNDEncrypt |
CATEGORY: | Email MAPI |
DEMO: | HNDMAILSEND.APP HNDSOURCEMAPIDEMO.APP HNDOUTLOOK.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDIMAIL.INC |
CODE: | HNDIMAIL.CLW |
TEMPLATE: | HandyMapiEmail EmbedMapiEmail More |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class handles MAPI Email connectivity to the default email client installed on your system. Since MAPI Email is a Microsoft standard, to which not all email clients adhere, MAPI is restricted to the capablilites provided by the host email client(s) installed.
However, when MS Windows Live is the default email client, and to a lesser extent MS Outlook, there is no easier way to implement email sending and receiving in your applications than using MAPI connectivity as implemented in this HNDIMail class.
HNDIMail is leveraged by a variety of CHT templates such as InstantOutlookMail, and Jumpstarts such as "MAPI Send With Attachments". It includes attachment compression and encryption, capabilities. The developer can introduce his/her own user interface or leverage the email client's interface to implement email sending and retrieving functionality.
CLASS: | HNDNetMAPIClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Email MAPI |
DEMO: | HNDMAILMAPI.APP |
DLL: | HNDNETMAPI.DLL |
TLB: | HNDNETMAPI.TLB |
HEADER: | HNDNETMAPI.INC |
CODE: | HNDNETMAPI.CLW |
TEMPLATE: | EmbedNetMAPIClasses |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class serves as a COM wrapper for CHT dll HNDNETMAPI.DLL. It provides basic MAPI connectivity for send/receive services using your installed email client (Outlook, Windows Live, Windows Mail). Developers may optionally utilize the email client's native interface or provide a custom interface of their own design.
Sending operations provide for TO, CC and BCC, single or multiple attachments and multiple addresses separated by semi-colons. The only real requirement to get this going is a working, correctly configured email client on the host machine.
Example application(s): HNDMAILMAPI.APP. Template(s): EmbedNetMAPIClasses.
This class is based on a DLL called HNDNETMAPI.DLL which CHT has built with C# and which connects to Clarion via COM-interop.
CLASS: | HNDNetSMTPClass |
STATUS: | Current |
PARENT: | HNDConfig HNDError |
COMPOSED: | HNDStrLib HNDComLibrary IHNDNetSMTP |
CATEGORY: | Email SMTP |
DEMO: | HNDMAILNET.APP HNDSMTPNETDEMO.APP HNDZIPNEMAILNET.APP More |
DLL: | HNDNETSMTP.DLL |
TLB: | HNDNETSMTP.TLB |
HEADER: | HNDNETSMTP.INC |
CODE: | HNDNETSMTP.CLW |
TEMPLATE: | EmbedSMTPClasses |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class handles SMTP Email sending, standard and SSL. It leverages CHT COM DLL, HNDNETSMTP.DLL. The revised template now pre-configures your setup to ask for SMTP parameters when non are found in the registry. As soon as valid SMTP parameters including SMTPUserName, SMTPPassWord, SMTPServer, SMTPPort, UseSSL, and SMTPReturnAddress are found the template functionality stops nagging for a correct configuration. It's easy to set up multiple SMTP configurations on the same hardware. For an example of that look at HNDZIPNEMAILNET.APP.
HNDNetSMTPClass is leveraged by a variety of CHT templates such as EmbedNetSMTPClasses, and Jumpstarts such as "SMTP Configure", "SMTP Net Send Basic". It includes attachment compression and encryption, capabilities. The developer can introduce his/her own user interface or leverage the many example applications provided by CHT.
CLASS: | HNDSmtp |
STATUS: | Current |
PARENT: | HNDConfig HNDError |
COMPOSED: | HNDBuffer HNDDisk HNDEncrypt HNDRegistry |
CATEGORY: | Email SMTP |
DEMO: | HNDZIPNEMAILSMTP.APP HNDBULKMAILSMTP.APP HNDSOURCESMTPDEMO.APP HNDMAILSMTP.APP More |
DLL: | CLARUNEXT.DLL |
TLB: | None |
HEADER: | HNDSMTP.INC |
CODE: | HNDSMTP.CLW |
TEMPLATE: | EmbedSMTPFunctions Source_EmbedSMTPFunctions More |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class handles SMTP Email sending, standard and SSL. It leverages Clarion DLL, CLARUNEXT.DLL which exists in both the run-time set provided by Clarion Professional and Clarion Enterprise. The revised template now pre-configures your setup to ask for SMTP parameters when non are found in the registry. As soon as valid SMTP parameters including SMTPUserName, SMTPPassWord, SMTPServer, SMTPPort, UseSSL, and SMTPReturnAddress are found the template functionality stops nagging for a correct configuration.
It's easy to set up multiple SMTP configurations on the same hardware. For an example of that look at HNDZIPNEMAILSMTP.APP.
HNDSMTP is leveraged by a variety of CHT templates such as EmbedSMTPFunctions, and Jumpstarts such as "SMTP Configure", "SMTP Send With Attachments" and more. It includes attachment compression and encryption, capabilities. The developer can introduce his/her own user interface or leverage the many example applications provided by CHT.
CLASS: | HNDSourceProcedure |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Embedding Assist |
DEMO: | HANDYBULKMAILBATCHER.APP HNDMAILSMTP.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDSRC.INC |
CODE: | HNDSRC.CLW |
TEMPLATE: | HandySourceProcedure |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is introduced into your application by a procedure template called HandySourceProcedure. Our template and the resulting procedure is a replacement for ABC's native source procedure. The problem, as we see it, with ABC's native source procedure is a lack of embed points into which add-on templates may be added.
While it may seem counter-intuitive to expect template embed points in a "source" procedure, it is perfectly normal and "par-for-the-course" to combine template-embedded code with hand-embedded code in all kinds of situations. So why is this not provided in the ABC native source procedure?
With that thought in mind, this class, HNDSourceProcedure, and its procedure template HandySourceProcedure provide both template embed points (i.e. points into which template-provided code may be placed) as well as hand embed points (i.e. points into which hand-provided code may be placed).
Additionally, along the lines of providing a maximum of plug-in functionality from other CHT classes, into the source procedure that results from creating a source procedure the CHT way, we've provided a group of related templates, the names of which begin with "Source_", for example, Source_EmbedDiskFunctions.
The following is a comprehensive list of related templates:
Source_EmbedDiskFunctions, Source_EmbedDateFunctions,
Source_EmbedDiskExFunctions, Source_EmbedEncryptionFunctions,
Source_EmbedHZOFunctions, Source_EmbedMAPIFunctions,
Source_EmbedSMTPFunctions, Source_EmbedUtilityFunctions,
Source_EmbedZipFunctions, Source_EmbedQueryBuilderFunctions
CLASS: | HNDError |
STATUS: | Current |
PARENT: | None |
COMPOSED: | None |
CATEGORY: | Error Handler |
DEMO: | All |
DLL: | None |
TLB: | None |
HEADER: | HNDERROR.INC |
CODE: | HNDERROR.CLW |
TEMPLATE: | All |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is derived directly or indirectly by all CHT classes. It acts as an error manager/messenger and (optionally) as an application status logging manager. When using CHT classes, crictical method calls may be followed by an OBJ.GetLastErrorCode() call to obtain an error number. Zero indicates no error. To obtain an error message call instead OBJ.GetLastError(). A blank message indicates no error. To have the error displayed unconditionally call OBJ.ShowLastError(True). To display an error conditionally based upon the current status condition of property OBJ.Verbose, call OBJ.ShowLastError().
To see status logging in action, study the application called HNDMTSNG.APP in which all server transactions are logged to a text control populated on the server window. The information in that status text control is managed by this HNDError class from inside the server classes which derive HNDError. In deeply nested classes the error manager is normally the base class from which the rest derive.
Error numbers and error messages bubble up to the topmost, last derived class, from classes lower down in the heirarchy. This makes error determination easy, since the developer can poll the topmost class instance - the one attached to his/her Clarion procedure - for an error number or message to determine a problem, no matter how deep inside the CHT classes that error may have ocurred.
CLASS: | HNDNetLinkSmtp |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDRegistry HNDDisk |
CATEGORY: | Experimental |
DEMO: | Internal Only at Present |
DLL: | hndnetlinksmtp.dll |
TLB: | None |
HEADER: | HNDNETLINK.INC |
CODE: | HNDNETLINK.CLW |
TEMPLATE: | Internal Only at Present |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is an experimental net-dll-related set of functions which test the feasibility of creating CHT net DLLs which expose a dual interface.
1) A standard function export interface which can be linked to.
2) A COM interface which can be instantiated to connect via Clarion COM.
For the time being we won't say more about this, other than to acknowledge that a single experimental dll, called HNDNETLINKSMTP.DLL exists which exports a single function GetCHTForumLogin() successfully. The medium-term objective of this experiment is to further expand this DLL to work both as a standard linkable DLL and as a COM DLL.
More information will appear here as the experiment continues.
CLASS: | HNDAnimate |
STATUS: | Current |
PARENT: | HNDError HNDDiskEx |
COMPOSED: | None |
CATEGORY: | Extended Controls - Animation |
DEMO: | HNDCPYDM.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDANIMA.INC |
CODE: | HNDANIMA.CLW |
TEMPLATE: | EmbedObject |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDAnimate class provides a variety of on-screen animations used most often by developers as an indication of on-going activity or to replace or enhance a progress bar.
It encapsulates MS Windows' built-in animation control for easy use on your application windows. See HNDCPYDM.APP for examples.
HNDAnimate is optionally passed into HNDDiskEx to provide animation services on wait windows for a variety of bulk file processing activities. It may also be used alone on any Clarion window with the .AVI of your choice. This class does not have a direct template to implement its functionality. It, instead, is used inside of HNDDISKEX via composition to create an "animation object" that's capable of displaying short animations on a window -- for example: hndfilecopy.avi.
It may be added to a procedure (as can any CHT Class) via the generic class-attachment template called "EmbedObject". But any template that incorporates HNDDiskEx (See HNDDiskEx) will make this class available to your procedure.
CLASS: | HNDComAnimation |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Extended Controls - Animation |
DEMO: | HNDCPYDM.APP |
DLL: | MSCOMCT2.OCX |
TLB: | HNDCMANI.TLB |
HEADER: | HNDCMANI.INC |
CODE: | HNDCMANI.CLW |
TEMPLATE: | HandyCOMAnimationControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CHT HNDComAnimation class provides a control interface for Clarion windows in which to display a variety of .AVI files to provide WAIT and PROGRESS displays while the window is busy performing some task.
The .AVI file designated to be played on the window (see \hndapps\avi\ for examples) is determined by the developer, everything from flying folders for copying files to folders sailing neatly into the Windows Recycle bin.
CLASS: | HNDDatePicker |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Extended Controls - Calendars |
DEMO: | HNDDTPK.APP |
DLL: | MSCOMCT2.OCX |
TLB: | HNDDTPKR.TLB |
HEADER: | HNDDTPKR.INC |
CODE: | HNDDTPKR.CLW |
TEMPLATE: | HandyCOMDatePickerControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CHT HNDDatePicker Class provides a really functional drop-down calendar control, native to the Windows operating system, and delivered via MSCOMCT2.OCX COM library.
An example application called HNDDTPK.APP displays how to configure the control for a variety of foreground and background settings. A set of handy functions is available to both set and retrieve date values from the drop-down calendar.
CLASS: | HNDDigitalClockClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Extended Controls - Clocks |
DEMO: | HNDCONTROLTPLS.APP |
DLL: | HNDDGTLCLOCK.OCX |
TLB: | HNDDGTL.TLB |
HEADER: | HNDDGTL.INC |
CODE: | HNDDGTL.CLW |
TEMPLATE: | HNDDigitalClockControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class activates an OLE/COM control passed in from the window procedure and displays an active, digital clock inside the perimeter of the control. A single Init call gets the clock started. See demo HNDDIGITALCLOCKDEMO.APP.
Apply this class to your Clarion Window with a control template called HNDDigitalClockControl.
CLASS: | HNDOutlookClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary HNDWindow |
CATEGORY: | Extended Controls - Email |
DEMO: | HNDOUTLOOK.APP HNDOUTLOOKINTERFACEDEMO.APP HNDOUTLKDEMO.APP |
DLL: | OUTLCTL.DLL |
TLB: | HNDOUTTL.TLB |
HEADER: | HNDOUTTL.INC |
CODE: | HNDOUTTL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class serves as a COM wrapper for a Microsoft COM DLL called OUTLCTL.DLL. CHT's Outlook Control provides a full-feature, user-configurable MS Outlook Email interface that lets users easily control send, receive and view behaviors, and interact with email documents from inside their Clarion application.
There is an implicit assumption, of course, that a working copy of MS Oulook exists on the host system. A demonstration application called HNDOUTLOOK.APP illustrates use of the template and calling HNDOutlookClass Class methods.
CLASS: | HNDAddressBox |
STATUS: | Current |
PARENT: | HNDNameBox |
COMPOSED: | None |
CATEGORY: | Extended Controls - Names And Addresses |
DEMO: | HND6.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDADRBX.INC |
CODE: | HNDADRBX.CLW |
TEMPLATE: | HandyAddressControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDAddressBox is an address-handling utility that lets your users enter an address into a single, multi-line text field even when the back end data file or table has separate fields for Street, Suite, City, Province/State and Country.
Developers can configure this class to direct input into the target data fields of their choice.
When there is any doubt as to the interpretation, or completeness of an input address, a dialog similar to the address dialog in MS Outlook pops up with the components displayed in the target fields, allowing the user to make adjustments if necessary.
HNDAddressBox works in two directions so that addresses may be displayed from the data repository in a single, multi-line text field for editing with changes written back to the correct target data table fields.
The list of selectable countries is developer configurable. Example application HND6.APP.
CLASS: | HNDNameBox |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDAppIO |
CATEGORY: | Extended Controls - Names And Addresses |
DEMO: | HND6.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDADRBX.INC |
CODE: | HNDADRBX.CLW |
TEMPLATE: | HandyAddressControls |
DESCRIPTION:
*** ***
HNDNameBox is a name-handling utility that lets your users enter a name like Mr. Gus M. Creces into a single entry field even when the back end data file or table has separate fields for Title, Salutation, First Name, Initial, and Last Name. Developers can configure this class to direct input into the target data fields of their choice.
When there is any doubt as to the interpretation, or completeness of an input name, a dialog similar to the name dialog in MS Outlook pops up with the components displayed in the target fields, allowing the user to make adjustments if necessary.
HNDNameBox works in two directions so that names may be displayed from the data repository in a single field for editing with changes written back to the correct target data table fields.
A variety of name-layout variants are possible using formal or informal name inputs. Title and Salutation dropdowns are configurable for any language and for specialized usage.
Example applications: HNDTEST.APP, HND6.APP
CLASS: | HNDComProgressBar |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Extended Controls - Sliders And Progress |
DEMO: | HNDPROGRESSBAR.APP |
DLL: | MSCOMCTL.OCX (Microsoft OCX) |
TLB: | HNDPRGBR.TLB |
HEADER: | HNDPRGBR.INC |
CODE: | HNDPRGBR.CLW |
TEMPLATE: | HandyComProgressBarControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDCOMProgressBar is a Windows COM control progress bar, native to Windows via MSCOMCTL.OCX. Use CHT template HandyComProgressBarControl to drop this control on any Clarion window.
CLASS: | HNDComSlider |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | Extended Controls - Sliders And Progress |
DEMO: | HNDSLIDER.APP |
DLL: | COMCTL32.OCX |
TLB: | HNDCSLDR.TLB |
HEADER: | HNDCSLDR.INC |
CODE: | HNDCSLDR.CLW |
TEMPLATE: | HNDComSliderControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDComSlider is a Windows COM control slider bar, native to Windows via COMCTL32.OCX. Use Control template HNDComSliderControl to drop this control on any Clarion window.
CLASS: | HNDNetFTPClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | FTP FROM NET DLL |
DEMO: | HNDFTPNET.APP |
DLL: | HNDNETFTP.DLL |
TLB: | HNDNETFTP.TLB |
HEADER: | HNDNETFTP.INC |
CODE: | HNDNETFTP.CLW |
TEMPLATE: | EmbeNetFTPClasses |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class sets up an application to utilize standard FTP protocols from a Clarion application. The underlying capability comes from C# via a CHT C# DLL called HNDNETFTP.DLL and three code modules (also listed above), HNDNETFTP.INC, HNDNETFTP.CLW AND HNDNETFTP.TLB.
CLASS: | HNDComZipClass |
STATUS: | Current |
PARENT: | HNDDisk |
COMPOSED: | HNDStrLib HNDComLibrary |
CATEGORY: | File And Memory Compression |
DEMO: | HNDZIPNEMAIL.APP HNDZIPNFTP.APP More |
DLL: | HNDZIPR.OCX |
TLB: | HNDZIPPR.TLB |
HEADER: | HNDZIPPR.INC |
CODE: | HNDZIPPR.CLW |
TEMPLATE: | HandyCOMZipperControl EmbedZipQueryParserFunctions Source_EmbedZipFunctions |
DESCRIPTION:
*** ***
This class provides a wrapper for a CHT-developed OCX called HNDZIPR.OCX. The OCX in combination with this wrapper class provide a full range of standard file zipping/unzipping services including bulk and single file operations, with optional encryption. The OCX requires a window with two messaging controls in order to operate.
A callback method in this class wrapper posts progress and zip/unzip messages to the controlling window during file zip/unzip operations. If you require invisible or background operations, hide or minimize the window hosting the HNDZIPR.OCX. A template called HandyCOMZipperControl may be used to add this control to your application window.
CLASS: | HNDEncrypt |
STATUS: | Current |
PARENT: | HNDBuffer HNDError |
COMPOSED: | HNDDisk HNDDosFile HNDStrLib HNDComLibrary |
CATEGORY: | File And Memory Encryption |
DEMO: | HNDXTEST.APP HNDENCRYPT.APP HNDCLIENTCL.APP HNDCLIENTSV.APP |
DLL: | CAPICOM.DLL |
TLB: | HNDCAPIC.TLB |
HEADER: | HNDENCRP.INC |
CODE: | HNDENCRP.CLW |
TEMPLATE: | HEncrypt |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This CHT class is used extensively by several CHT classes, to provide underlying file encryption, and/or memory encryption services to these classes. For example CHT file server apps such as HNDFILSV.APP is able to encrypt files on request from one of its designated file clients: HNDCLIENTCL.APP, HNDLIENTSV.APP
Similarly a CHT data server app such as HNDLIENTSV.APP, is able to encrypt memory streams of data being sent to its corresponding clients: HNDCLIENTCL.APP
In combination with the CHT Class HNDCompress, this encryption class is able to package compressed and encrypted files for transport acrosse the web to receiving file clients, as well as compressed and encrypted memory streams across the web to receiving data clients.
CLASS: | HNDFileNotify |
STATUS: | Current |
PARENT: | None |
COMPOSED: | None |
CATEGORY: | File Callback Functions |
DEMO: | HNDMONITORDIRECTORYSVC.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDFILENOTIFY.INC |
CODE: | HNDFILENOTIFY.CLW |
TEMPLATE: | EmbedFileNotifyFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
Provides low-level Windows functionality to capture file notification messages from the operating system. See example: HNDMONITORDIRECTORYSVC.APP
CLASS: | HNDGreenbar |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | GreenBar Browses |
DEMO: | HND2.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDGNBAR.INC |
CODE: | HNDGNBAR.CLW |
TEMPLATE: | GreenBarABCBrowse ExplorerBrowse HandyMarkerBrowse |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class, HNDGreenbar template adds greenbar features available in CHT browse extension templates ExplorerBrowse, HandyMarkerBrowse, LocatorOverRideControl and ListBoxBrowseExtender. These templates populate HNDGreenbar and call its methods without the developer needing to do more than configure the "Greenbar" dialog.
Using GreenBarABCBrowse, greenbar features can be added to a generic ABC browse also, again without any programmatic intervention by the developer.
CLASS: | HNDZStore |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDRegistry FileManager(ABC) |
CATEGORY: | HZO File Creation |
DEMO: | HNDSETUP.APP HNDSETUPMKR.APP |
DLL: | HNDZLbex.DLL |
TLB: | None |
HEADER: | HNDZSTOR.INC |
CODE: | HNDZSTOR.CLW |
TEMPLATE: | EmbedHndZStoreFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDZStore class is used to insert and extract all types of files for transport and installation purposes into, and out of, a master Clarion .TPS container. These installation container files, are identified by the file extension .HZO. In orer to attach HNDZStore to a procedure use EmbedHndZStoreFunctions, or you may use simply, EmbedObject a generic embed template which can be enrolled to attach any class to a procedure for the purpose of coding and calling into that class' functions.
The best example to study the use of this class is HNDSETUP.APP, also known as "CHT Installation Containerizer". Used in conjunction with CHT's file and memory compression class HNDSqueeze, files can be optionally compressed into the target container. And used in conjuction with CHT's encryption class HNDEndcrypt, files can also be optionally encrypted into the target container via HNDZStore.
HZO installation files created by HNDSETUP.APP, utilizing this HNDZStore class, are the basis for the file installation and transport system used by CHT's Webupdater Toolkit Installer.
CLASS: | HNDHexToDecimal |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Hexadecimal Translation |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHEXDC.INC |
CODE: | HNDHEXDC.CLW |
TEMPLATE: | EmbedObject |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDHexToDecimal is, as the name implies, a HEXADECIMAL to DECIMAL and DECIMAL to HEXADECIMAL conversion class.
Send the HexToDec() function a HEX value in the form of a string and an INTEGER value is returned as a LONG. .
Send the DecToHex() function an INTEGER value in the form of a LONG and a HEX value is returned as a STRING..
IsHex will confirm whether an assumed HEX value is actually HEXADECIMAL by returning True (yes it is) or False (no it is not)..
CLASS: | HNDAppio |
STATUS: | Current |
PARENT: | None |
COMPOSED: | ICriticalSection(ABC) |
CATEGORY: | INI File And Registry |
DEMO: | Most_CHT_Demo_Apps |
DLL: | None |
TLB: | None |
HEADER: | HNDAPPIO.INC |
CODE: | HNDAPPIO.CLW |
TEMPLATE: | EmbedObject |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is responsible for storing application configuration information to the target location indicated on the Application -> Global Properties -> General -> Non Volatile Settings dialog in the Clarion IDE.
Other CHT classes make use of this class to write configuration information (where required) to the target location configured in your application.
HNDAppIO is lower on the pecking order than even the HNDERROR module. Hence it posts no errors. It has no virtuals since it is not meant to be derived. Rather, it is incorporated into other, higher-level modules by composition rather than derivation. Like the HNDError class, it is used ubiquitously, so it is small, simple and thread-safe.
Ten other CHT Classes include HNDAppIO via composition. Consequently, it's functionality is incorporated indirectly into many applications using a variety of CHT Templates without you needing to do anything directly to make use of it.
It may be added to a procedure (as can any CHT Class) via the generic class-attachment template called "EmbedObject".
CHT header modules that incorporate this class are as follows: hndadrbx.inc, hndbrwfl.inc, hndcalc.inc, hndclnt.inc, hnddisk.inc, hndflbrw.inc, hndinetf.inc, hndini.inc, hndscdap.inc, hndutil.inc.
CLASS: | HNDFile |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Independent File Class |
DEMO: | HNDSETUP.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDFILE.INC |
CODE: | HNDFILE.CLW |
TEMPLATE: | EmbedHNDFileFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDFile is a completely independent file class (independent of ABC File class) used primarily inside CHT classes that handle file I/O.
Via its template EmbedHNDFileFunctions, it can be used equally readily on a local procedure to open, read, write a data file, ISAM or SQL. Since this is intended to be used locally on a procedure and is therefore, not global, procedures that need to independently access files, for I/O can do so without repercussions as long as the file (table) in use is shared access.
CHT's HNDSETUP app and even our Webupdater applications, make extensive use, internally to create, and or handle .HZO container files for installation purposes.
CLASS: | HNDSubscriptionServer |
STATUS: | Current |
PARENT: | HNDError HNDBrowserServer |
COMPOSED: | CriticalSection |
CATEGORY: | Internet - HTTP Servers |
DEMO: | HNDSLFSV.APP HNDMTSNG.APP HNDCLIENTSV.APP HNDFILSV.APP More |
DLL: | None |
TLB: | None |
HEADER: | HNDSUBSV.INC |
CODE: | HNDSUBSV.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDSubscriptionServer derives CHT Server Base Class HNDBrowserServer.
CLASS: | HNDBrowserServer |
STATUS: | Current |
PARENT: | HNDHtml HNDError |
COMPOSED: | HNDConfig HNDIPAddress HNDDisk HNDBuffer HNDEncrypt HNDDates CriticalSection |
CATEGORY: | Internet - HTTP Web Servers |
DEMO: | HNDSLFSV.APP HNDCLIENTSV.APP More |
DLL: | None |
TLB: | None |
HEADER: | HNDBRWSV.INC |
CODE: | HNDBRWSV.CLW |
TEMPLATE: | EmbedBrowserServer |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDBrowserServer, is CHT's base server class. Because this class has evolved tremendously from its first appearance in approximately the year 2000, it is not only "Browser" oriented. Its name is now a total misnomer, since that name is based on its very earliest implementation only.
Consider this class in its presently evolved form, as a CHT's HTTP Server Base Class.
This class is incorporated into every CHT server application by means of a template called EmbedBrowserServer, again now a misnomer, but no less practical, as the template that implements CHT's HTTP Server Base Class. All CHT Server applications are founded on this template and this base class.
A child server class named HNDSubscriptionServer derives this server base class, to implement browser-directed server operations, client-directed server operations and various file-directed server operations.
The examples listed above are only some of the example applications utilizing this HNDBrowserServer class and its hosting template.
Examples: HNDSLFSV.APP, HNDSLFSVFX.APP, HNDTYPE4UCRSERVERTEMPLATES.APP
CLASS: | HNDJSONClass |
STATUS: | Current |
PARENT: | HNDBinIO HNDError |
COMPOSED: | None |
CATEGORY: | Internet - JSON |
DEMO: | HNDCHATSVR.APP HNDCHATCLNT.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDJSON.INC |
CODE: | HNDJSON.CLW |
TEMPLATE: | EmbedHNDSocketEvents |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The purpose of this class is to package outgoing Clarion data structures GROUPS, QUEUES, RECORDS, into standard, delimited JSON strings and to unpackage incoming JSON strings back into Clarion GROUPS, QUEUES and RECORDS.
CLASS: | HNDSocket |
STATUS: | Current |
PARENT: | HNDIPAddress HNDError |
COMPOSED: | None |
CATEGORY: | Internet - Sockets |
DEMO: | HNDCHATSVR.APP HNDCHATCLNT.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDSOCKET.INC |
CODE: | HNDSOCKET.CLW |
TEMPLATE: | EmbedSocketEvents |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is a TCP/IP sockets connector and communicator class. It is not standalone and works in conjunction with CHT class HNDSocketEvents. This class can communicate over raw TCP/IP sockets without requiring HTTP protocol. It does so, using JSON data packages that contain both a data component and a command component.
Note that, maximum data package size is limited by equate HPROP:RcvBufferCmd. This socket class is initially designed to provide an always-connected socket connection for use with applications such as HNDCHATSVR.APP and HNDCHATCLNT.APP. Once a client connects, the socket created is not closed until the client logs off or a socket error is encountered at which time the client is disconnected from the server.
This behaviour is entirely different than HTTP protocol which does not keep sockets open between the client and the server. Under HTTP, a client makes a request which opens a new, temporary, socket connection with the server and the transaction processed on that socket completes as soon as a response is received by the client from the server.
CLASS: | HNDSocketEvents |
STATUS: | Current |
PARENT: | HNDSocket HNDIPAddress HNDError |
COMPOSED: | HNDJSONClass |
CATEGORY: | Internet - Sockets |
DEMO: | HNDCHATSVR.APP HNDCHATCLNT.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDSOCKET.INC |
CODE: | HNDSOCKET.CLW |
TEMPLATE: | EmbedHNDSocketEvents |
DESCRIPTION:
This class is a TCP/IP sockets connector and communicator class. It is not standalone and works in conjunction with CHT class HNDIPAddress. See the description of HNDSocket to understand how this class works, since HNDSocket and HNDSocketEvents are part an parcel of one set of CHT socket-connector-communicator functionalities.
CLASS: | HNDInternetExplorer |
STATUS: | Current |
PARENT: | HNDClient |
COMPOSED: | None |
CATEGORY: | Internet Web View |
DEMO: | HNDPREVIEWER.APP HNDBRWCL.APP More |
DLL: | SHDOCVW.DLL |
TLB: | HNDSHDVW.TLB |
HEADER: | HNDSHDVW.INC |
CODE: | HNDSHDVW.CLW |
TEMPLATE: | HandyCOMInternetExplorerControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDInternetExplorer Class is based on the Windows DLL which supports Microsoft's Internet Explorer Browser Version 11 (not MS Edge). This class implements most, if not all, of the features available in IE 11, but does so on a Clarion window, using 100% Clarion source code, generated by CHT templates, or embedded inside the application.
This control is able to view all of the document types that may ordinarily be viewed via the IE 11, browser: HTML, PDF, TEXT, Word Documents and so on.
The CHT Toolkit relies on it heavily for tasks such as displaying our voluminous documentation, delivering our Web Forum, previewing HTML documents from our Document Builder and Snap Editor and displaying tile menus that jump into standard Clarion procedures or into Web-Server UCR$ procedures.
CLASS: | HNDBuffer |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Low Level Memory Data Functions |
DEMO: | HNDMTSNG.APP HNDSLFSV.APP More |
DLL: | None |
TLB: | None |
HEADER: | HNDBUFFR.INC |
CODE: | HNDBUFFR.CLW |
TEMPLATE: | EmbedBufferObject |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class provides a means of creating, removing, and even re-sizing large storage memory spaces within your procedures. This eliminates the need to create a pre-sized CSTRING which must accept binary data of unknown length. Inevitably, in situations where the input data size is unknown ahead of time, the CSTRING created is too big and wastes memory, or too small and either fails or GPFs due to memory overwrite. Since this is an object that once out of scope self-destucts, there is also less risk of leaving unused, but still-allocated memory space attached to your application, thus preventing "memory leak".
HNDBuffer also includes a "BufferHash" function which can detect differences between the data held in one buffer and another. A Hash value is kept of any given buffer as it has data inserted or removed from it. At any time, the hash value of one buffer can be compared with that of another buffer to determine if they are the same or different.
CHT's server classes use HNDBuffer extensively to create memory storage for large, but infinitely size-variable, data coming and going over the network or the internet.
HNDBuffer is used via composition in the following CHT header modules: hndbinio.inc, hndbrwsv.inc, hndclnt.inc, hnddisk.inc, hndencrp.inc, hndhttp.inc, hndimail.inc, hndjsdap.inc, hndpop.inc, hndradap.inc,hndrwprlib.inc, hndscdap.inc, hndsmtp.inc hndstrlb.inc, hndutil.inc, hndvwdap.inc, hndwhttp.inc and hndwmp.inc.
CLASS: | HNDExcelClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | MS OFFICE CONTROL |
DEMO: | HNDTESTEXCEL.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDEXCEL.INC |
CODE: | HNDEXCEL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
MS OFFICE EXCEL controls: See example application HNDTESTEXCEL.APP
We've re-instated a demo application called HNDTESTEXCEL.APP and have added examples of exporting .XLS spreadsheets to .CSV as well as importing .CSV to be saved as .XLS.
This application comes with several test files: PEOPLE.XLS, PEOPLE_EXPORT.XLS and PEOPLE_IMPORT.CSV.
Several new functions were added into the HNDEXCELCLASS. These are called:
EXCEL.OpenCSV() which opens a comma delimited .CSV file, as well as function EXCEL.SaveAscSV() which provides an option to export and save to different CSV formats. The application contains commentary and example code to show how export and import are accomplished.
CLASS: | HNDActiveDocument |
STATUS: | Minor |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | MS Office Interface |
DEMO: | HNDWORDINTERFACEDEMO.APP |
DLL: | Microsoft Office |
TLB: | None |
HEADER: | HNDMSWRD.INC |
CODE: | HNDMSWRD.CLW |
TEMPLATE: | EmbedMSWordFunctions HandyWordInterfaceControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDActiveDocument class is one component of five, providing an OLE interface connection to Microsoft Office documents. Other MS Office objects in the set are: HNDMSWord, HNDApplication, HNDDocuments, HNDActiveDocument, HNDRefWindow.
This set of five Clarion objects allows Clarion applications utilizing them to connect to MS Word in order to send various formatting insertion and deletion commands (spell checking for example) via the same document interface provided by MS Word itself via its "Visual Basic For Applications", command language.
EXAMPLE APPLICATIONS:
HNDWORDDEMO.APP and HNDWORDINTERFACEDEMO.APP.
CLASS: | HNDApplication |
STATUS: | Minor |
PARENT: | HNDError |
COMPOSED: | HNDDocuments |
CATEGORY: | MS Office Interface |
DEMO: | HNDWORDINTERFACEDEMO.APP |
DLL: | Microsoft Office |
TLB: | None |
HEADER: | HNDMSWRD.INC |
CODE: | HNDMSWRD.CLW |
TEMPLATE: | EmbedMSWordFunctions HandyWordInterfaceControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDApplication class is one component of five, providing an OLE interface connection to Microsoft Office documents. Other MS Office objects in the set are: HNDMSWord, HNDApplication, HNDDocuments, HNDActiveDocument, HNDRefWindow.
This set of five Clarion objects allows Clarion applications utilizing them to connect to MS Word in order to send various formatting insertion and deletion commands (spell checking for example) via the same document interface provided by MS Word itself via its "Visual Basic For Applications", command language.
EXAMPLE APPLICATIONS:
HNDWORDDEMO.APP and HNDWORDINTERFACEDEMO.APP.
CLASS: | HNDDocuments |
STATUS: | Minor |
PARENT: | HNDError |
COMPOSED: | HNDActiveDocument |
CATEGORY: | MS Office Interface |
DEMO: | HNDWORDINTERFACEDEMO.APP |
DLL: | Microsoft Office |
TLB: | None |
HEADER: | HNDMSWRD.INC |
CODE: | HNDMSWRD.CLW |
TEMPLATE: | EmbedMSWordFunctions HandyWordInterfaceControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDDocuments class is one component of five, providing an OLE interface connection to Microsoft Office documents. Other MS Office objects in the set are: HNDMSWord, HNDApplication, HNDDocuments, HNDActiveDocument, HNDRefWindow.
This set of five Clarion objects allows Clarion applications utilizing them to connect to MS Word in order to send various formatting insertion and deletion commands (spell checking for example) via the same document interface provided by MS Word itself via its "Visual Basic For Applications", command language.
EXAMPLE APPLICATIONS:
HNDWORDDEMO.APP and HNDWORDINTERFACEDEMO.APP.
CLASS: | HNDMSWord |
STATUS: | Minor |
PARENT: | HNDError |
COMPOSED: | HNDApplication |
CATEGORY: | MS Office Interface |
DEMO: | HNDWORDINTERFACEDEMO.APP |
DLL: | Microsoft Office |
TLB: | None |
HEADER: | HNDMSWRD.INC |
CODE: | HNDMSWRD.CLW |
TEMPLATE: | EmbedMSWordFunctions HandyWordInterfaceControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDMSWord class is one component of five, providing an OLE interface connection to Microsoft Office documents. Other MS Office objects in the set are: HNDMSWord, HNDApplication, HNDDocuments, HNDActiveDocument, HNDRefWindow.
This set of five Clarion objects allows Clarion applications utilizing them to connect to MS Word in order to send various formatting insertion and deletion commands (spell checking for example) via the same document interface provided by MS Word itself via its "Visual Basic For Applications", command language. EXAMPLE APPLICATIONS:HNDWORDDEMO.APP and HNDWORDINTERFACEDEMO.APP.
CLASS: | HNDOfficeClass |
STATUS: | Minor |
PARENT: | HNDError |
COMPOSED: | HNDUtil HNDStrLib HNDComLibrary |
CATEGORY: | MS Office Interface |
DEMO: | HNDWORDINTERFACEDEMO.APP |
DLL: | Microsoft Office |
TLB: | HNDOUTTL.TLB |
HEADER: | HNDOFFICE.INC |
CODE: | HNDOFFICE.CLW |
TEMPLATE: | EmbedHNDWordClassFunctions HandyWordInterfaceControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class provides a direct, OLE interface into the Microsoft Office products suite.
It is the parent, generalized MS Office interface for more MS-product-specific classes such as HNDOfficeWord and HNDOFficeOutlook.
EXAMPLE APPLICATIONS:
HNDWORDDEMO.APP and HNDWORDINTERFACEDEMO.APP.
CLASS: | HNDRefWindow |
STATUS: | Minor |
PARENT: | HNDError |
COMPOSED: | HNDMSWord |
CATEGORY: | MS Office Interface |
DEMO: | HNDWORDINTERFACEDEMO.APP |
DLL: | Microsoft Office |
TLB: | None |
HEADER: | HNDMSWRD.INC |
CODE: | HNDMSWRD.CLW |
TEMPLATE: | EmbedMSWordFunctions HandyWordInterfaceControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The HNDRefWindow class is one component of five, providing an OLE interface connection to Microsoft Office documents. Other MS Office objects in the set are: HNDMSWord, HNDApplication, HNDDocuments, HNDActiveDocument and this one, HNDRefWindow.
This set of five Clarion objects allows Clarion applications utilizing them to connect to MS Word in order to send various formatting insertion and deletion commands (spell checking for example) via the same document interface provided by MS Word itself via its "Visual Basic For Applications", command language.
EXAMPLE APPLICATIONS:
HNDWORDDEMO.APP and HNDWORDINTERFACEDEMO.APP.
CLASS: | HNDOfficeWord |
STATUS: | Current |
PARENT: | HNDError HNDOfficeClass |
COMPOSED: | None |
CATEGORY: | MS Office Interface (Word) |
DEMO: | HNDWORDINTERFACEDEMO.APP |
DLL: | Microsoft Office |
TLB: | HNDWORD.TLB,HNDOUTTL.TLB |
HEADER: | HNDWORD.INC |
CODE: | HNDWORD.CLW |
TEMPLATE: | EmbedHNDWordClassFunctions HandyWordInterfaceControls |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class provides a direct, OLE interface to Microsoft Office, particularly MS WORD. Functions included are: List recent documents, Close current document, Get document name, Close all documents, Minimize MS Word, Restore MS Word, Maximize MS Word, Spell check document, Grammar check document.
CLASS: | HNDIDial |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Network And Internet Connectivity |
DEMO: | HNDSLFCMD.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDIDIAL.INC |
CODE: | HNDIDIAL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This low-level connectivity class is derived by the following classes in order of importance to CHT, with the most-used classes appearing first.
HNDHttp (HNDHTTP.CLW/HNDHTTP.INC),
HNDClient (HNDCLNT.CLW, HNDCLNT.INC),
HNDIMail (HNDIMAIL.CLW, HNDIMAIL.INC),
HNDInetFtp (HNDINETF.CLW, HNDINETF.INC),
HNDHttpAPI (HNDHTAPI.CLW/HNDHTAPI.INC),
HNDWinHTTP (HNDWHTTP.CLW/HNDWHTTP.INCF)
By way of example, the HNDHTTP class performs an InternetOpen function by calling HNDIDIAL's "Dial" function. Other classes such as HNDClient which derive HNDHTTP class, rely on the low-level connectivity provided by HNDIDIAL.
In all use-cases, HNDIDIAL is used indirectly, by another class which derives HNDIDIAL for the purposes of creating, maintaining and testing connectivity.
CLASS: | HNDClient |
STATUS: | Current |
PARENT: | HNDError HNDHttp |
COMPOSED: | HNDAppio HNDBuffer |
CATEGORY: | Network, Internet - HTTP/HTTPS Communications |
DEMO: | HNDCLIENTCL.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDCLNT.INC |
CODE: | HNDCLNT.CLW |
TEMPLATE: | EmbedHTTPClientFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class is used by all Clarion applications of a "Client" nature that access data, files, or installations across the WEB, WAN or NETWORK. HNDClient derives directly from HNDHTTP which handles low-level web/wan/network connectivity while HNDCLIENT handles primarily unpackaging activities, be that, decompressing, decrypting, insertion and reformatting from data streams into Clarion queues, groups and file data structures for display in Clarion list-box structures or on Clarion forms.
CHT Client Server applications are built on this class, as are the Client Server implementations provided more recently via ListBoxBrowseExtender.
The applications listed above as examples are only a sampling of the available applications that apply this CHT HNDCLIENT class in their design.
EXAMPLE APPLICATIONS:
HNDSLFCL.APP,HNDFILCL.APP, HNDBRWCL.APP, HNDCLIENTCL.APP More...
CLASS: | HNDClientHook |
STATUS: | Current |
PARENT: | None |
COMPOSED: | HNDAppio HNDClient |
CATEGORY: | Network, Internet - HTTP/HTTPS Communications |
DEMO: | HNDCLIENTCL.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDCLNT.INC |
CODE: | HNDCLNT.CLW |
TEMPLATE: | EmbedHNDClientHook |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDClientHook class, as the name suggests, acts as a "hooking mechanism" to to individualize any HNDHTTP/HNDCLIENT class created and connected via another Clarion procedure into a any other Clarion procedure.
This has the effect of making a non-global instance of HNDCLIENT available to other procedures to use as if HNDCLIENT was globally instantiated on the app.
Generally, the procedure which instantiates and connects a HNDCLIENT instance is used as an HTTP configuration and connection mechanism, which then is able to pass an already-connected instance of HNDCLIENT as a parameter to any other procedure called from there.
CHT's HNDCLIENTHOOK class receives and references this passed in HNDCLIENT instance and makes it fully available and viable on the child procedure without having to re-connect or be re-configured to connect to the data server.
EXAMPLE APPLICATIONS:HNDSLFCL.APP,HNDFILCL.APP, HNDBRWCL.APP, HNDCLIENTCL.APP More...
CLASS: | HNDHttp |
STATUS: | Important |
PARENT: | HNDIDial |
COMPOSED: | See Below |
CATEGORY: | Network, Internet - HTTP/HTTPS Communications |
DEMO: | HNDSLFCL.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDHTTP.INC |
CODE: | HNDHTTP.CLW |
TEMPLATE: | EmbedHTTPFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This CHT class handles all HTTP-Protocol-based communications from CHT+Clarion Client applications to CHT+Clarion Server applications. There are nearly two-dozen examples (see partial list above) of HNDHTTP acting as the HTTP communications system underlying the application.
HNDHTTP makes extensive use of the following CHT classes:
HNDIDIAL (HNDIDIAL.CLW/HNDIDIAL.INC) (for connectivity)
HNDCONFIG (HNDCONFG.CLW/HNDCONFG.INC) (for configuration)
HNDDISK (HNDDISK.CLW/HNDDISK.INC) (for computer disk operations)
HNDENCRYPT (HNDENCRP.CLW/HNDENCRP.INC) (for encryption/decryption operations)
HNDBUFFER (HNDBUFR.CLW/HNDBUFR.INC) (for memory management operations)
See also HNDCLIENT (HNDCLNT.CLW/HNDCLNT.INC) which derives this HNDHTTP class for implementations of higher-level operations which create streaming, download or remote copying functionality using HNDHTTP.
OTHER DEMO APPLICATIONS:
HNDCLIENTCL.APP,HNDBRWCL.APP, HNDFILCL.APP, HNDINSTALLMYFILES.APP, HNDSLFCMD.APP
CLASS: | HNDParse |
STATUS: | Important |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Querying, Locating, Filtering |
DEMO: | HND3.APP (See Below) |
DLL: | None |
TLB: | None |
HEADER: | HNDPARSE.INC |
CODE: | HNDPARSE.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDParse class is the Query Interpreter used throughout CHT to build real-language queries into everything from SQL data view searches to file compression utilities and email filtering.
CHT Query Language is based on the principle that queries are easier to construct when the query language being used resembles the user's own native language.
Probably half of CHT demo applications include CHT Query Language in some way or another to conduct a search or to construct a filter, so finding an example of its use is straightforward enough.
When querying data tables CHT query language is cross-interpreted into the brand of SQL used by your data table, and into standard Clarion when your data table is an ISAM type like TopSpeed.
Check out the PDF document called CHT Query Language for a comprehensive essay on the use of CHT Query Language to provide searching and filtering in your applications.
OTHER DEMO APPLICATIONS:
HNDACCES.APP, HNDSQL1.APP, HNDSQL2.APP, HNDSQL3.APP, HNDSQLPOPFAVEXPB.APP, HNDSQLEXPBQRY.APP, More...
CLASS: | HNDBrwFilter |
STATUS: | Important |
PARENT: | HNDParse |
COMPOSED: | HNDLocator |
CATEGORY: | Record Filtering Operations |
DEMO: | See Below |
DLL: | None |
TLB: | None |
HEADER: | HNDBRWFL.INC |
CODE: | HNDBRWFL.CLW |
TEMPLATE: | See Below |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDBrwFilter class is used by all CHT browse extensions to provide filtering capability using CHT Query Language derived from the CHT HNDParse class.
The advanced features of this class come built-in to the CHT browse-extension templates ExplorerBrowse (EXPB), HandyMarkerBrowse (HMB), ListBoxBrowseExtender (LBX), and others.
Thus, these features may be used via embedding inside your browse procedure without applying any other CHT query control or search control templates.
However, a wide variety of such query and search control templates is available to write search and query code for you, without embedding, using the functionalities provided by HNDBrwFilter and it's parent HNDParse.
APPLICABLE TEMPLATES:
ExplorerBrowse (EXPB), ListBoxBrowseExtender (LBX), HandyMarkerBrowse (HMB)
SOME QUERY TEMPLATES:
QueryParsingFilterControl (QPFC), PopFavoriteQueries_HMB, HandyMarkerBrowseLocatorControlEx and nearly a dozen more.
EXAMPLE DEMO APPLICATIONS:
HNDSCHOOL.APP, HNDACCES.APP, HNDSQL1.APP, HNDSQL2.APP, HNDSQL3.APP, HNDSQLPOPFAVEXPB.APP, HNDSQLEXPBQRY.APP, More...
CLASS: | HNDSMS |
STATUS: | Current |
PARENT: | HNDConfig HNDError |
COMPOSED: | HNDBuffer HNDDisk HNDEncrypt |
CATEGORY: | SMS Messages |
DEMO: | HNDSMSMESSAGE.APP |
DLL: | CLARUNEXT.DLL |
TLB: | None |
HEADER: | HNDSMS.INC |
CODE: | HNDSMS.CLW |
TEMPLATE: | EmbedSMSFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class handles SMS message sending. It leverages Clarion DLL, CLARUNEXT.DLL which exists in both the run-time set provided by Clarion Professional and Clarion Enterprise. This CHT Class provides an SMS API with which to send SMS message either via an SMS Gateway Server or an SMTP Email Server.
SMS messages sent via an SMTP Email Server will be transferred to the target packaged as an email. In either case the SMS address is the recipient's cell number plus his/her SMS GateWay Domain.
Format the receiving address as #########@sms.gatewaydomain.com.
For an example application look at: HNDSMSMESSAGES.APP.
CLASS: | HNDAvi |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDSlider HNDAnimate |
CATEGORY: | Sound And Video |
DEMO: | HNDQMCI.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDAVI.INC |
CODE: | HNDAVI.CLW |
TEMPLATE: | EmbedAVIFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
The CHT HNDAvi class implements MS Windows MCI, audio and video playback giving Clarion developers relatively painless programmatic access to these built-into-Windows sound and video functionalities.
Since the capabilities of this class have evolved tremendously over the years, the class name has become a misnomer. AVI is only one file format of many, that can be played.
Demo application HNDQMCI.APP illustrates playing file formats MP3, WAV, AVI, MIDI, MPG and WMV. A template called EmbedAVIFunctions may be used to attach the HNDAVI class to your procedure.
CLASS: | HNDSplitter |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Split Bar Functionality |
DEMO: | HNDSPLITTERTEST.APP HNDCLXHT.APP HNDTPXHT.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDSPLITTER.INC |
CODE: | HNDSPLITTER.CLW |
TEMPLATE: | EmbedHNDSplitter HandySplitBarVertical HandySplitBarHorizontal |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class handles a split-bar control, either vertical or horizontal, which divides up the window and moves or resizes controls up/down or left/right, respectively, when the split-bar control is dragged.
A very good example of how this control can be used to maximize window real-estate without using tabs is HNDCLXT.APP.
The parent template to attach this functionality to a window is EmbedHNDSplitter. Once that template is populated, the control templates, HandySplitBarVertical or HandySplitBarHorizontal can be dropped on the window.
CLASS: | HNDExport |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Text Export |
DEMO: | HND2.APP HND3.APP HNDACCESS.APP HNDDRLDN.APP HNDSQL5.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDEXPOR.INC |
CODE: | HNDEXPOR.CLW |
TEMPLATE: | HandyQueryProcessLimiter |
DESCRIPTION:
©CHT (Clarion Handy Tools)
Provides text export functionality to CHT Query Extension template HandyQueryProcessLimiter.
CLASS: | HNDDisk |
STATUS: | Current |
PARENT: | HNDUtil HNDError |
COMPOSED: | HNDDosFile HNDBuffer HNDEncrypt HNDZStore HNDAnimate |
CATEGORY: | WINDOWS LOW-LEVEL API |
DEMO: | HNDCMP.APP HNDSETUP.APP Most CHT Apps |
DLL: | None |
TLB: | None |
HEADER: | HNDDISK.INC |
CODE: | HNDDISK.CLW |
TEMPLATE: | EmbedDiskFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class contains an expansive collection of utility functions that provide services as widely varied as file compression, file encryption, disk file searching with querying, file search and replace, shell operations and more. Because HNDDisk derives HNDUtil, it inherits all of it's abilities as well. HNDDisk is used either directly or indirectly by numerous other CHT classes, drawing on its lower level utility functionality.
For direct use in your procedures, HNDDisk can be attached to any procedure using the CHT template called EmbedDiskFunctions. HNDDisk is also derived directly by the HNDDiskEx class.
This higher level class derives and utilizes HNDDisk and HNDUtil methods and properties as if they were its own. The method names in HNDDisk are reasonably self explanatory, for example: ShrinkFile(), GrowFile(), RunShell() FileCopy(), DirMove() and so on.
Separate details are provided for each method in the HNDDisk class. By scanning the method (procedure) names to determine likely candidates to provide the functionality you're looking for, and then reading the method's description, which often includes the names of demonstration applications, you should be able to gain a full understanding of how to use any method in this class. Note that some methods, meant for internal use by the class itself, will be so marked and may be more scantily documented.
CLASS: | HNDCallBack |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDRGBColor |
CATEGORY: | Window Callback Functions |
DEMO: | Most CHT Demos |
DLL: | None |
TLB: | None |
HEADER: | HNDCALBK.INC |
CODE: | HNDCALBK.CLW |
TEMPLATE: | EmbedWindowFunctions EmbedHNDCallBackFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This is a low-level, window call-back functions class derived by a higher level class called HNDWindow. As such, HNDCallBack is never attached to your window procedure all by itself. It comes in as a derived component of the CHT HNDWindow Class, which is populated on Window procedures by EmbedWindowFunctions.
One example, of what the code in this class is capable of doing, is finding other windows, even those of other running programs, and sending messages to them via the function OBJ.SendAppEvent().
Since most CHT Demos incorporate template EmbedWindowFunctions, on their Window procedures, based in the ABC Window template, almost any CHT demo will illustrate some aspect of the HNDCallBack class.
CLASS: | HNDMenu |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Window Extension Class |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDMENU.INC |
CODE: | HNDMENU.CLW |
TEMPLATE: | EmbedWindowFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDMenu is derived by HNDWINDOW, one of CHT's most used classes It has no user-direct template. But it ends up as part of almost every CHT window-based application, via HNDWindow class and EmbedWindowFunctions.
CLASS: | HNDWindow |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Window Extension Class |
DEMO: | Any HNDAPP Demo or Utility |
DLL: | None |
TLB: | None |
HEADER: | HNDWINDO.INC |
CODE: | HNDWINDO.CLW |
TEMPLATE: | EmbedWindowFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDWindow, via its template, EmbedWindowFunctions manages a host of features on your application window, from application-in-system-tray, to window callbacks, to Window Transparency and transitions.
CLASS: | HNDDiskEx |
STATUS: | Current |
PARENT: | HNDDisk HNDUtil HNDError |
COMPOSED: | None |
CATEGORY: | Windows API |
DEMO: | HNDSETUP.APP HNDCMP.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDDSKEX.INC |
CODE: | HNDDSKEX.CLW |
TEMPLATE: | EmbedDiskFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDDiskEx class derives from HNDDISK, which in turn derives from HNDUTIL. It contains a group of utility functions that provide bulk file processing services including: compression, encryption, containerization, copying, moving and erasing.
For example: BulkContainerizeFiles(), BulkFileMove().
Use HNDDiskEx with installer applications, or server/client applications that need to package files in a secure, compact manner for web transfer.
CLASS: | HNDUtil |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | HNDBuffer |
CATEGORY: | Windows API |
DEMO: | Most |
DLL: | None |
TLB: | None |
HEADER: | HNDUTIL.INC |
CODE: | HNDUTIL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This class contains a broad collection of utility functions that provide services as widely varied as string manipulation, operating system detection, shell folder detection, path manipulation, file statistics, data hashing and more. This class can be attached to your application procedures directly using the CHT template called EmbedUtilityFunctions.
HNDUtil is also derived directly by the HNDDisk class and indirectly by the HNDDiskEx class.
These higher level classes derive and utilize HNDUtil methods and properties as if they were their own.
The method names in HNDUtil are reasonably self explanatory, for example: GetComputerName(), LongToHex(), RemoveBetween(), NoSpace() and so on.
--RECENT CHANGES AND ADDITIONS---
PrintShell now presents a preview of the to-be-printed file from which the print menu may be exercised.
CLASS: | HNDEventLoggerClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Windows Event Logging |
DEMO: | HNDEVENTLOGGERDEMO.APP |
DLL: | None |
TLB: | None |
HEADER: | HNDEVEER.INC |
CODE: | HNDEVEER.CLW |
TEMPLATE: | HandyCOMEventLoggerControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDEventLoggerClass, via its template, places a CHT COM Event Logger Control from HNDEVENTLOGGER.DLL on your application window. CHT's Event Logger Control provides an easy-to-use COM interface inside your application procedures for writing Events, Errors and Warnings to the SYSTEM APPLICATION LOG where they can be found and read using an MS Windows utility called EVENTVWR.MSC.
A demonstration application called HNDEVENTLOGGERDEMO.APP illustrates use of the template and calling HNDEventLoggerClass methods.
CLASS: | HNDWindowsMediaPlayer |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Windows Media Player Interface |
DEMO: | HNDMEDIAPLAYER.APP |
DLL: | WMP.DLL |
TLB: | HNDWMP.TLB |
HEADER: | HNDWMP.INC |
CODE: | HNDWMP.CLW |
TEMPLATE: | HandyCOMMediaPlayerControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDWindowsMediaPlayer is a Clarion class that provides a programmatic interface to Windows Media Player.
Its control template places a COM Windows Media Player Control on your application window. Windows Media Files provide audio and video services to web pages and can act as sound and video help files and demonstrations.
With this control, you can play and control the playing of a variety of media files (.AVI, .WMA, .WMV, .ASX, .WAX, .WVX, .WPL, .DVR-MS, .WMD, .MPG, .MPEG, .M1V, .MP2, .MP3, .MP4, .MPA, .MPE, .MPV2, .M3U, .MID, .MIDI, .RMI, .AIF, .AIFC, .AIFF, .AU, .SND, .WAV, .CDA, .IVF, .MOV, .QT and player skins files .WMZ, .WMS) directly on your application windows.
A demonstration application called HNDMEDIAPLAYER.APP illustrates use of this template while providing a convenient tutorial host to play the .WMV-based video training files provided with CHT as a training aid to the wide variety of uses for our templates and classes.
CLASS: | HNDScriptHostClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Windows Script Host Access |
DEMO: | HNDWINDOWSSCRIPTHOSTDEMO.APP |
DLL: | WSHOM.OCX |
TLB: | HNDWSHOM.TLB |
HEADER: | HNDWSHOM.INC |
CODE: | HNDWSHOM.CLW |
TEMPLATE: | HandyCOMWindowsScriptHostControl |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDScriptHostClass is a CHT Wrapper for Windows Script Host technology on your application window. Windows Script Host is a Microsoft COM DLL called WSHOM.OCX which provides script-based services (eg: WScript, JScript and VBScript) to the operating system and to the I.E. browser.
Microsoft describes it as follows:
"Windows Script Host (WSH), a feature of the Microsoft(C) Windows(C) family of operating systems, is a powerful multi-language scripting environment ideal for automating system administration tasks. Scripts running in the WSH environment can leverage the power of WSH objects and other COM-based technologies that support Automation, such as Windows Management Instrumentation (WMI) and Active Directory Service Interfaces (ADSI), to manage the Windows subsystems that are central to many system administration tasks."
WSH includes the WScript object and three COM-based objects: WshShell, WshNetwork, and WshController. The WSH COM objects are useful in several situations.
For example, the WshNetwork object allows you to map network drives; this capability is not available in either WMI or ADSI. This template and its underlying wrapper class, HNDScriptHostClass, based in modules HNDWSHOM.INC, HNDWSHOM.CLW, HNDWSHOM.TLB provide you the equivalent of running windows administration scripts from inside your Clarion application, using Clarion syntax rather than writing WScript, JScript or VBScript.
CLASS: | HNDShellLinkClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | Windows Shell Library |
DEMO: | HNDWINDOWSSHELLDEMO.APP |
DLL: | SHELL32.DLL |
TLB: | HNDSHLNK.TLM |
HEADER: | HNDSHLNK.INC |
CODE: | HNDSHLNK.CLW |
TEMPLATE: | GlobalIncludeHndShellLinkFunctions EmbedShellLinkClassFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDShellLinkClass assists with the creation of clickable links to executables and documents. HND_WBUPDATERC10.EXE and CHTSETUP.EXE both use this class to create links to our CHT installation.
CLASS: | HNDFlashClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX Docs Yet ToDo XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDFLASH.INC |
CODE: | HNDFLASH.CLW |
TEMPLATE: | None |
DESCRIPTION:
Class description is in preparation.
CLASS: | HNDIPAddress |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDIPADR.INC |
CODE: | HNDIPADR.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDInetFtp |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDINETF.INC |
CODE: | HNDINETF.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDJDOAdapter |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDJSDAP.INC |
CODE: | HNDJSDAP.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDLocator |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDLOCTR.INC |
CODE: | HNDLOCTR.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDMailDefaults |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDMLDEF.INC |
CODE: | HNDMLDEF.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDMailSlotClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDMAIOT.INC |
CODE: | HNDMAIOT.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDMsCDO |
STATUS: | Current |
PARENT: | HNDConfig |
COMPOSED: | HNDError HNDStrLib HNDComLibrary HNDDates HNDEncrypt HNDRegistry HNDDisk HNDDosFile |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | HNDCDODM.APP HNDMAILCDO.APP HNDZIPNEMAILCDO.APP |
DLL: | CDO.DLL, MAPI32.DLL, CDOHTML.DLL |
TLB: | HNDMSADO.TLB,HNDMSADO.TLB |
HEADER: | HNDMSCDO.INC |
CODE: | HNDMSCDO.CLW |
TEMPLATE: | EmbedCDOMailFunctions |
DESCRIPTION:
©CHT (Clarion Handy Tools)
HNDMsCDO provides SMTP mail from MS Windows CDO (Collaboration Data Objects) mail capability.
Collaboration Data Objects are a high-level set of COM objects that allow you to easily access the e-mail system embedded in the Microsoft Windows® product line. CDO objects are generally used by client applications. For the most part, CDO objects are used by clients wanting to access the e-mail system. Service providers must be implemented using the native MAPI library.
Not all Microsoft Windows product line products install CDO capability by default. When you install Exchange 5.5 or later, you must take special steps in order to install these libraries. Choose Custom Setup. From this setup, select IIS/Active Server/Active Server Pages Option. This setup process causes the earlier DLLs to be installed on your system.
CLASS: | HNDMscalClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDMSCAL.INC |
CODE: | HNDMSCAL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDNetDriveDataClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDNETDRIVEDATA.INC |
CODE: | HNDNETDRIVEDATA.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDNetWLanAPIClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDNETWLANAPI.INC |
CODE: | HNDNETWLANAPI.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDOSControl |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDOSCTL.INC |
CODE: | HNDOSCTL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDOfficeOutlook |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDOUTLOOKMS.INC |
CODE: | HNDOUTLOOKMS.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDProgress |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDPROGR.INC |
CODE: | HNDPROGR.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDQueryBuilder |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDQBINF.INC |
CODE: | HNDQBINF.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDRGBColor |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDRGBCO.INC |
CODE: | HNDRGBCO.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDRegistry |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDREG.INC |
CODE: | HNDREG.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDReportEngine |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDRWPRLIB.INC |
CODE: | HNDRWPRLIB.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDRuler |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDRULER.INC |
CODE: | HNDRULER.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDScripter |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSCDAP.INC |
CODE: | HNDSCDAP.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDService |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSERVC.INC |
CODE: | HNDSERVC.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDShell |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSHELL.INC |
CODE: | HNDSHELL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
This CHT library connects to a numerous low level MS Windows Shell functions which would normally be performed strictly from the DOS prompt. For example, functions such as AskRestartWindows, StartService, StopService, FindFiles and BrowseForFileName.
A demonstration application called HNDWINDOWSSHELLDEMO.APP is included in our toolkit to illustrate practical usage ideas.
CLASS: | HNDSizes |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSIZES.INC |
CODE: | HNDSIZES.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDSlider |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSLIDE.INC |
CODE: | HNDSLIDE.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDSpell |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSPELL.INC |
CODE: | HNDSPELL.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDStepClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSTEPS.INC |
CODE: | HNDSTEPS.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDStrLib |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSTRLB.INC |
CODE: | HNDSTRLB.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDString |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSTR.INC |
CODE: | HNDSTR.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDStringClass |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDSTRCLASS.INC |
CODE: | HNDSTRCLASS.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDText |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDViewAdapter |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDVWDAP.INC |
CODE: | HNDVWDAP.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDViewManager |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDVWMGR.INC |
CODE: | HNDVWMGR.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HNDWinHTTP |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDWHTTP.INC |
CODE: | HNDWHTTP.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndBody |
STATUS: | Current |
PARENT: | HndTable |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndEntry |
STATUS: | Current |
PARENT: | HNDInput |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndFooter |
STATUS: | Current |
PARENT: | HndTable |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndForm |
STATUS: | Current |
PARENT: | None |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndGlobal |
STATUS: | Current |
PARENT: | None |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndHeader |
STATUS: | Current |
PARENT: | HndTable |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndHtml |
STATUS: | Current |
PARENT: | HndDosFile |
COMPOSED: | Util Page PageQ |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndInput |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndPage |
STATUS: | Current |
PARENT: | HNDError |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)
CLASS: | HndTable |
STATUS: | Current |
PARENT: | None |
COMPOSED: | None |
CATEGORY: | XXX SUMMARY DOCUMENT XXX |
DEMO: | None |
DLL: | None |
TLB: | None |
HEADER: | HNDHTML.INC |
CODE: | HNDHTML.CLW |
TEMPLATE: | None |
DESCRIPTION:
©CHT (Clarion Handy Tools)