Icetips - Templates, Tools & Utilities for Clarion Developers

Templates, Tools and Utilities
for Clarion Developers

Icetips Utilities


Templates, classes and methods to handle your programming issues, small to large

Whether you need to deal with dates, manipulate strings, control progress bars, fool with files, export data, turbo-charge SetupBuilder, add a Vista manifest to your app, or a couple of hundred other things, the Icetips Utilities may have a template or class ready for you to drop into your app and be done with it!

Templates, Classes & Methods

There are many, many different templates and classes in the Icetips Utilities, and hundreds of methods. There are code templates, control templates, extension templates and utility templates. There are all kinds of classes and methods, for all kinds of things. Please see the Templates and Classes webpages for more information.

And more...

The Icetips Utilities come with a detailed 535 page users guide in PDF format, which is being added to on a regular basis. You can download the documentation for detailed information about how the Utilities can be used.

How to buy

The Icetips Utilities are included Icetips' premium high-value Gold Subscription for $299. The Icetips Utilities may also be purchased separately for just $99.  (Multiple copy pricing is available.)

Compatibility

You can use the Icetips Utilities with Clarion 6 - 10 in the ABC template chain. You can use the Icetips Utilities in Legacy/Clarion applications if the "Enable the use of ABC Classes" is checked on the Classes tab in the Global settings.

INFORMATION
Updated: 9-Jun-2021
Clarion 6.0-6.3Yes
Clarion 7 - 10Yes
ABCYes
LegacyYes
Multi-DLLYes
Source codeYes
Documentation543 pgs

26 Files Available for Download for Icetips Utilities

File Date Description Size
2021-06-09 Icetips Utilities 2021.06.2462.336 (Clarion 11.1)
Build 2021.06.2462.336 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 11.1 Release for Clarion 11.1 See Version history documentation for more information.
24533,688 Download
2021-06-07 Icetips Utilities 2021.6.2461.331 (Clarion 11.1)
Build 2021.6.2461.331 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 11.1 Release for Clarion 11.1 See Version history documentation for more information.
24533,616 Download
2018-10-14 Icetips Utilities 2018.10.2460 (Clarion 11)
Build 2018.10.2460 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 11 Release for Clarion 11 See Version history documentation for more information.
24429,088 Download
2016-01-25 Icetips Utilities 1.2.2446 (Clarion 10)
Build 1.2.2446.255 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 10
New String Class method to format and encode XML data. See Version history documentation for more information.
21,533,288 Download
2015-11-02 Icetips Utilities 1.2.2441 (Clarion 10)
Build 1.2.2441.196 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 10
New String Class method to extraxt and insert substrings into strings. See Version history documentation for more information.
21510,472 Download
2015-06-29 Icetips Utilities 1.2.2433 (Clarion 10)
Build 1.2.2433.168 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 10
New String Class method to parse CSV files. Fixes to ResizeImage Image Class method Version history documentation for more information.
21,395,280 Download
2015-02-24 Icetips Utilities 1.2.2430 (Clarion 10)
Build 1.2.2430.153 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 10
Pre-release for Clarion 10 See Version history documentation for more information.
20,904,232 Download
2014-07-06 Icetips Utilities 1.2.2427 (Clarion 9.1)
Build 1.2.2427.135 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 7.3, Clarion 8.0 to Clarion 9.1 Updates and fixes to Preserve Variable, new methods and templates. See Version history documentation for more information.
20,873,584 Download
2014-01-27 Icetips Utilities 1.2.2423 (Clarion 9.1)
Build 1.2.2423.106 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 7.3, Clarion 8.0 to Clarion 9.1 New File Queue template, improvements to CopyFile, installer updated to 9.1. See Version history documentation for more information.
19,381,296 Download
2013-05-14 Icetips Utilities 1.2.2415 (Clarion 9)
Build 1.2.2415 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 7.3, Clarion 8.0 and Clarion 9 Installer update. See Version history documentation for more information.
18,047,808 Download
2012-07-06 Icetips Utilities 1.2.2409
Build 1.2.2409 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 7.3 and Clarion 8.0 Installer update. See Version history documentation for more information.
17,415,400 Download
2012-07-02 Icetips Utilities 1.2.2408
Build 1.2.2408 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 7.3 and Clarion 8.0 Lot of documentation updates. See Version history documentation for more information.
17,413,808 Download
2012-05-08 Icetips Utilities 1.2.2406
Build 1.2.2406 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 7.3 and Clarion 8.0 See Version history documentation for more information and video on Youtube.
14,936,152 Download
2011-05-04 Icetips Utilities 1.1.2397
Build 1.1.2397 Compatible with Clarion 6.0-6.3, Clarion 7.0 - 7.3 and Clarion 8.0
Installer is now compatible with Clarion 8.0 See Version history documentation for more information.
13,256,000 Download
2010-12-21 Icetips Utilities 1.1.2394
Build 1.1.2393 Compatible with Clarion 6.0-6.3 and Clarion 7.0 - 7.3
Installer is now compatible with Clarion 7.3
13,378,624 Download
2010-12-01 Icetips Utilities 1.1.2392
Build 1.1.2392 Compatible with Clarion 6.0-6.3 and Clarion 7.0 - 7.2
Documentation added for File Select Class and Files Class. Updated docs for Network Class. Minor fixes to install, Date Class and templates.
13,351,672 Download
2010-09-06 Icetips Utilities 1.1.2390
Build 1.1.2390 Compatible with Clarion 6.0-6.3 and Clarion 7.0 - 7.2
12,421,120 Download
2010-06-06 Icetips Utilities 1.1.2387
Build 1.1.2387 Compatible with Clarion 6.0-6.3 and Clarion 7.0 - 7.2
11,852,032 Download
2010-03-15 Icetips Utilities 1.1.2374
Build 1.1.2374 Compatible with Clarion 6.0-6.3 and Clarion 7.x
11,499,904 Download
2010-02-26 Icetips Utilities 1.1.2367 BETA
Build 1.1.2367 BETA Compatible with Clarion 6.0-6.3 and Clarion 7.x
11,110,656 Download
2010-01-27 Icetips Utilities 1.1.2359
Build 1.1.2359 Compatible with Clarion 6.0-6.3 and Clarion 7.x
10,188,296 Download
2010-01-26 Icetips Utilities 1.1.2356
Build 1.1.2356 Compatible with Clarion 6.0-6.3 and Clarion 7.x
10,189,568 Download
2009-04-20 Icetips Utilities 1.1.2352
Build 1.1.2352 Compatible with Clarion 6.0-6.3 and Clarion 7
8,526,192 Download
2009-04-15 Icetips Utilities 1.1.2351
Build 1.1.2351 Compatible with Clarion 6.0-6.3 and Clarion 7
7,245,608 Download
2008-09-02 Icetips Utilities Documentation (PDF)
PDF Documentation (189 pages) for version 1.1.2319
1,627,355 Download
2007-08-14 Page of Pages demo
This small demo, using the invoice.dct from the Clarion 6.3 examples, demonstrates basic use of the Page of Pages class in the Icetips Utilities. The zip includes app, dct, tps and other necessary files. It also includes a locally compiled exe.
742,438 Download

Progress Class, Part I

Progress Class, Part II

Build 1.2.2406

Version 1.2.2441.196 - Monday, November 02, 2015

Updates, features:

  1. July 5, 2015 Added MatchControlSize method to core class.
  2. September 12, 2015 Added pDel parameter to StringToLines, allowing passing a delimiter to split the string to lines by.
  3. September 12, 2015 Added pQuoteChar parameter to ParseCSVLine, allowing setting the quote char for strings.
  4. September 12, 2015 Added pDel parameter to FileToLines, allowing it to parse files with End-Of-Line delimiters other than CR, LF and CR+LF.
  5. September 12, 2015 Added pDel parameter to WriteQToFile, allowing setting the End-Of-Line delimiters when writing the Lines queue to file. By default CR+LF (<13,10>) is used.
  6. October 20, 2015 Added LinesToFile method to StringClass. It's a wrapper for WriteQToFile.
  7. October 20, 2025 Added StringToFile method to StringClass. It's a wrapper for WriteStringToFile.
  8. October 26, 2015 Added SkipEOLOnLastLine property to StringClass. When using WriteQToFile or LinesToFile it will create an empty line because it added EOL at the end of the last line. If SkipEOLOnLastLine is set to True, then it does not add the EOL at the end of the last line. Original behaviour (adding an empty line) is left intact so it does not break code.
  9. October 28, 2015 Added GetStringBetween method to StringClass. It extracts a string from another string by searching for a beginning and end string, optionally starting at given positions. Can be specified if it's case sensitive or not.
  10. October 29, 2015 Added SetStringBetween method to StringClass. It inserts a string from another string in the same way as GetStringBetween does.

Fixes:

  1. July 4, 2015 Added ADJUST attribute to all #SHEET statements in the templates to make sure they adjust (more) properly when fonts in the IDE are changed.
  2. August 14, 2015 StringToLines would fail if the string contained no end-of-line characters. Fixed.
  3. September 12, 2015 End-Of-Line variable in LinesToString was declared as CSTRING(4) instead of CSTRING(5). Fixed.
  4. October 20, 2015 Preserve Variables template did not generate the correct code if conditions were used. Fixed.

Version 1.2.2433.168 - Monday, June 29, 2015

Updates, features:

  1. June 22, 2015: Added pDelimterStartsLine parameter to SplitString. Allows it to split lines based on the start characters of a line, not end characters.
  2. June 29, 2015: Added ParseCSVLine method to parse a line with CSV data. Also added FreeCSVFields (protected) method.

Fixes:

  1. March 10, 2015: The template could cause classes to export an older version which could cause "xxx is unresolved for export" errors when compiling exporting dlls. Fixed.
  2. May 24, 2015: Fixed a potential memory leak in the AddIntoParenthesis method.
  3. June 27, 2015: Image Class ResizeImage method did not work correctly on reports. Fixed.
  4. June 27, 2015: Image Class ResizeImage did not correctly size images when it was called multiple times for the same image control. Fixed.

Version 1.2.2430 - February 24, 2015

Updates, features:

  1. August 21, 2014: Added two new template files, ITUtilExt.tpw and ITUtilUtil.tpw. The first one will be used for additional Extension templates, the second for Utility templates.
  2. December 3, 2014: Added FormatDate and FormatTime to DateClass. Those take a format string, such as 'mm-dd-yyyy' and translate the passed date into the format passed in. This makes the formatting of dates much more flexible than the picture formats in Clarion.
  3. December 4, 2014: Added pCaseSensitive=0 to CountFinds, FindReplace and SearchReplace. Previously those were case insensitve, but can now handle case sensitive searches.
  4. December 16, 2014: Added Lesser, Greater to the Core Class and ColorToRGB and GetColorBrightness to the Utilities Class.

Fixes:

  1. July 16, 2014: RemoveHTML did not remove white spaces at beginning or end of the resulting string. Fixed.
  2. July 16, 2014: RemoveHTML did not remove   Fixed.
  3. July 21, 2014: Preserve Variable Data template could fail to generate an END statement into ThisWindow.Kill in some circumstances. Fixed.
  4. October 1, 2014: Demo app for the new IDE (UtilDemoC7.app) was missing a file, UtilDemo.Version in the install. Fixed.
  5. December 19, 2014: FileErrorCode() can return alphanumeric values since it returns a string. ErrorMsg always interpreted it as a LONG so results could be incorrect. Fixed.

Version 1.2.2427 - July 6, 2014

Updates, features:

  1. March 29, 2014: Added EnumRegistryValues method to the Registry Class.
  2. April 8, 2014: Added checks to allow condition to apply on reading and/or writing in the Preserve Variable Data template.
  3. April 8, 2014: Added embeds before and after reading and writing each variable in the Preserve Variable Data template.
  4. April 8, 2014: Updated and improved visual information on the Preserve Variable Data template.
  5. May 30, 2014: Added support for CPCS reports to the Preserve Variable Data template.
  6. June 26, 2014: Added InsertString to String Class.
  7. June 27, 2014: Added Alias Files global extension template. It adds PROP:Alias to all files in procedures.

Fixes:

  1. January 30, 2014: Installer did not allow selecting the Clarion root install folder. Fixed.
  2. February 21, 2014: The Icetips Preserve Variable Data template did not work in source procedures. Fixed. Generated code is at priority 1 and priority 9999.
  3. February 24, 2014: The pAppend parameter on WriteStringToFile was not implemented. Fixed.
  4. March 5, 2014: Example code for StringToWords did not show access to the Word queue. Fixed
  5. March 30, 2014: CompileSBProject method uses Exists() without ShortPath(). This can cause problems in certain situations reporting that a file/folder does not exist when it does. Fixed.
  6. June 16, 2014: Int64 variable declared in methods in the Registry Class caused "Duplicate label" error. Fixed.

Version 1.2.2423 - January 27, 2014

Updates, features:

  1. September 23, 2013: Added two parameters to CopyFiles to allow further refining of the SHFileOperation attributes.
  2. January 15, 2014: Added GenerateFileQueue extension template.
  3. January 27, 2014: Updated all template descriptions so they are prefixed with "Icetips Utilities: " to make it easier to find them!
  4. January 27, 2014 : Installer updated to work with Clarion 9.1

Fixes:

  1. August 5, 2013: Icetips SQL Queue Process template did not use external names for the queue fields. Fixed.
  2. October 25, 2013: Modified the "Preserver Variable Values" template code. The save was put in the wrong place in ThisWindow.Kill. Fixed.
  3. December 2, 2013: SplitString would fail for the last item in the string if it was just one character. Example "123;234;345" would work fine, where as "123;234;3" would correctly parse the first two elements, but the last one would be empty. Fixed.
  4. December 12, 2013: Increased number of possible enumerated processes in EnumProcesses from 1024 to 10240.

Version 1.2.2415 - May 14, 2013

Updates, features:

  1. September 20, 2012: Added GetBit, SetBit and GetBitString to the Core Class. This comes in very handy when using bitmap values!
  2. September 21, 2012: Added ReadFileToQ method to the String Class. It just calls FileToLines, but better matches naming convention with WriteQToFile.
  3. September 21, 2012: Added GetLastInputTime and GetIdleTime to the Windows Class. Documentation has also been added.
  4. September 22, 2012: Added option to Window Wizard to create tabs on the window. You can enter the text for each tab and create as many tabs as you want.
  5. April 15, 2013: Added "Icetips Preserve Variable Data" procedure extension template.
  6. May 14, 2013: Installer is now compatible with Clarion 9.

Fixes:

  1. September 21, 2012: #508: Verified bug in Clarion 8 that prevents .TXD files from being exported using #EXPORT(%DictionaryFile) which is used in the Icetips Export App and Dct global extension template. PTSS #39582: http://problemtracker.softvelocity.com/clarion8/UpdtCustBugsview.php?ID1=39582
  2. September 21, 2012: #332: Export Class no longer requires the ASCII driver.
  3. September 21, 2012: #332: Record Class no longer requires the ASCII driver. There is no longer any dependency on the ASCII file driver in the Utilities as it has been replaced with calls to methods in the String Class.
  4. September 21, 2012: #523: Page of Pages template erroneously called %ITPisCpcsReportTemplate group instead of %ITUisCpcsReportTemplate. Fixed.
  5. September 22, 2012: Help was not implemented in the Window Wizard. Fixed.
  6. October 19, 2012: Under some circumstances FileString was not disposed in the String class causing memory leak. Fixed
  7. January 19, 2013: Zendesk support ticket #15: StringToWords ignored words made up of digits only. Added parameter to StringToWords to indicate if digits should count as words. Fixed.
  8. February 25, 2013: Added support for Setup Builder 8 to the SetupBuilderClass.

Version 1.2.2408 - July 5, 2012

Updates, features:

  1. June 13, 2012: Added global template to handle Legacy applications. Use the "Icetips Utilities Classes Global - LEGACY ONLY" Global template instead of the "Icetips Utilities Classes Global - ABC ONLY" in the applications where you use the Icetips Utilities Classes. This template also needs to be added to the root/exporting dll app.
  2. June 22, 2012: Added QueueResorted virtual method to the AddHeaderSortToQueue template. This can only be implemented by modifying the ListQueue property in the brwext.inc file from being PRIVATE to PROTECTED. QueueResorted method is called after the queue is resorted, but a bug in the brwext.clw causes it to be called _before_ the queue is sorted so it's always one sort behind! The overridden method sorts the queue so after the parent call the queue is sorted correctly before your code executes.
  3. June 22, 2012: Modified installer to change the ListQueue property from PRIVATE to PROTECTED.
  4. June 22, 2012: Completed documentation for List procedures with Windows without HLP attribute utility template.
  5. June 22, 2012: Added TreatEmptyLastItemAsLine property to the StringClass. This allows SplitString to determine how to handle empty items at the end of the item array.
  6. June 23, 2012: Added 5 new embed points to the Limit Program Instance template to make it more flexible.
  7. June 23, 2012: Completed documentation for Limit Program Instance template.
  8. June 23, 2012: Completed documentation for all Utilities templates.
  9. June 25, 2012: Added a check to SetPageOfText method in Page of Pages class to prevent it from potentially replace the page-of token if it is found more than once in the metafile, indicating that the file contained the particular byte array in its internal code. This would prevent any problems due to replacing some of the meta file code from ever happening.
  10. June 26, 2012: Finished documentation for Page of Pages Class.
  11. June 27, 2012: Finished documentation of Write Version info to INI file template.
  12. June 27, 2012: Finished documentation of Add Header Sort to Queue template.
  13. June 27, 2012: Finished documentation of Bind/Unbind local variables template.
  14. June 27, 2012: Finished documentation of Icetips Browse Checkbox update template.
  15. June 28, 2012: Added and implemented the Icetips ShowFileRecord Wizard utility template.
  16. June 30, 2012: Finished documentation of Code templates.
  17. July 2, 2012: Finished documentation of Page of Pages control template.
  18. July 2, 2012: Finished documentation of all Utility templates.

Fixes:

  1. June 9, 2012: ShowProgress method in ProgressClass would apply "vista fix" to progress step on all operating system versions. It could cause back jumping in the progressbar on XP under some circumstances. Now only applied if running under Vista or newer operating systems. Fixed.
  2. June 22, 2012: SplitString could fail with last item in the item array if it contained only one character. Fixed.
  3. June 25, 2012: FindInString method in the String Class was not documented. Fixed.
  4. June 26, 2012: Limit Program Instance template didn't preserve variable setting for entries, i.e. if "!VarName" was used as "Unique Program String" it would be changed to "VarName". Same with the "Window caption string", "Message Caption" and "Message Text" entries. Fixed.
  5. June 26, 2012: Some methods were missing from the Overview and Methods list in the String Class chapter. Fixed.
  6. June 27, 2012: GetThemedPanelFEQ did not return the correct FEQ. Fixed.
  7. June 29, 2012: ThemeAPanel did not work in Clarion 8. Fixed.
  8. June 29, 2012: ThemeAPanel required XPTheme to be included for Clarion 8. Fixed.
  9. June 29. 2012: Fixes to ThemeAPanel for Clarion 8 did not work in Clarion 6. Fixed.

Version 1.2.2406 - May 8, 2012

Updates, features:

  1. June 9, 2011: Added FileToLines method to the String Class
  2. September 20, 2011: Added GetRegEx method to Registry Class
  3. September 20, 2011: Added QueryValue method to Registry Class
  4. September 20, 2011: Modified OpenRegistryKey method in Registry Class
  5. September 20, 2011: Added GetValueType method to Registry Class
  6. September 27, 2011: Added IsProgramRunning method to Windows Class
  7. October 1, 2011: Added "Limit Program Instance" global extension template.
  8. October 1, 2011: Added ActivateWindow method to Windows Class
  9. October 22, 2011: Added Export Windows without Help ID utility template.
  10. November 12, 2011: Modified return value from the ITRun method so that if the called process returns no exit code, the method returns 0 instead of the return value from WaitForSingleObject. The reason for this change is that it is possible that if the called process returns nothing and WaitForSingleObject returns a value that the calling code is expecting, the results are wrong.
  11. January 14, 2012: Finished documentation for Progress Class.
  12. May 3, 2012: Added FindReplace, AllocateSearchString and CountFinds methods to Core class. FindReplace is an adidtional search and replace method that returns the replaced string unlike SearchReplace method which needs the string to be passed in as a variable.

Fixes:

  1. October 6, 2011: GetMonthName returned space padded month name. Fixed.
  2. November 6, 2011: GetSBExecutable in Setup Builder Class would return true if it didn't find the exe. Fixed.
  3. November 11, 2011: GetValueType in Registry Class did not return the value data type for the registry entry. Fixed.
  4. November 11, 2011: GetRegEx in Registry Class did not handle value data type correctly. Fixed.
  5. January 23, 2012: EnumRegistrySubKeys did not implement the pIs64Bit parameter to enforce default, 32 or 64 bit keys. Fixed
  6. April 25, 2012: Thread limiter Global class instance was not exported correctly in multi-dll applications. Fixed.
  7. May 4, 2012: The ITUtility.hlp file was not included in the install. Fixed.
  8. May 4, 2012: The ITUtility.hlp was not activated in the main template file - ITUtility.tpl - so it did not open when using the "Help" button in the Clarion IDE! Fixed.

Version 1.1.2397 - May 4, 2011

Updates, features:

  1. May 4, 2011: Install built for Clarion 8.0.

Fixes:

  1. January 5, 2011: SplitString could cause "Index Out of Range" in some cases if the last line was empty. Fixed.
  2. January 12, 2011: FileToString method in String Class did not have the PROC attribute. Fixed.
  3. February 23, 2011: ErrorMsg did not return FileError() but Error() if it was called with (False, True) i.e. when it should only return FileErrorCode() and FileError(). Fixed.

Version 1.1.2394 - December 21, 2010

Fixes:

  1. December 10, 2010: EnumRegistrySubKeys would fail under windows 2008 server.

Version 1.1.2392 - December 1, 2010

Updates, features:

  1. September 7, 2010: Added ClassName field to the ChildWindowQ queue structure, used by the Windows Class.
  2. September 9, 2010: Added ITWinVirtualKeys.inc file which includes equates for all virtual keys as defined by winuser.h. This file is being included in the ITWin32Equates.inc file.
  3. September 9, 2010: Added equates for keyboard, mouse and hardware processing. This is being used in the upcoming Keyboard class.

  4. Key events: IT_KEYEVENTF_KEYDOWN IT_KEYEVENTF_EXTENDEDKEY IT_KEYEVENTF_KEYUP
    Input options: IT_INPUT_MOUSE IT_INPUT_KEYBOARD IT_INPUT_HARDWARE IT_INPUT_CHAR IT_INPUT_STRING
  5. September 10, 2010: ID field to the ChildWindowQ queue structure, used by the Windows Class. This is being retrieved in the EnumChildWindowProc and EnumTopWindowProc with IT_GetWindowLong(hwnd,IT_GWL_ID). This makes it possible to 100% identify a control and the ID is persistent.
  6. November 21, 2010: Documentation done for File Select Class.
  7. November 30, 2010: Documentation done for Files Class.
  8. November 30, 2010: Added keywords to the Network Class.
  9. November 30, 2010: Added ConvertToUNC and GetUNCFileNames to Network Class. Those methods simply call GetLocalNetworkFileName, but are easier to remember!
  10. November 30, 2010: Added documentation for IT_NETRESOURCEs and IT_NetworkShares data types. HideDebugView property and ConvertToUNC, EnumNetworkPrinters, GetLocalNetworkFileName, GetUNCFileName, IsLocalShare, IsUNC and ShowLocalShares methods in the Network Class.
  11. November 30, 2010: Added documentation for "Icetips Hide Windows while loading" global template.
  12. December 1, 2010: Added documentation for "Add Vista/Win7 Manifest to application" global template.
  13. December 1, 2010: Updated screenshots, keywords and information for several global extension templates.

Fixes:

  1. September 7, 2010: ProcessID property of the ChildWindows queue was not being primed in the EnumChildWindowsProc in Windows Class. Fixed.
  2. November 24, 2010: Install did not place uninstall log in the appropriate location. Fixed. Old uninstall files are moved to the proper location before the new install log is started.
  3. November 29, 2010: The GetLastWeek and GetThisWeek did not return correct dates in some cases. Fixed.
  4. November 29, 2010: The GetLastWorkWeek and GetThisWorkWeek did not return the correct dates in some cases. Fixed.
  5. November 29, 2010: The GetLastWorkWeek, GetThisWorkWeek and GetNextWorkWeek did not return the correct end date, i.e. it would return Saturday rather than Friday. Fixed.
  6. December 1, 2010: The TREE embed structure in Thread limit template caused it to create a second "Local Object" instance in the embed tree. Fixed.

Version 1.1.2390 - September 7, 2010

Updates, features:

  1. July 2, 2010: Documentation done for File Search Class.
  2. July 24, 2010: 22 new methods added to the Date Class: GetThisWeek, GetLastWeek, GetNextWeek, GetThisWorkWeek, GetLastWorkWeek, GetNextWorkWeek, GetThisMonth, GetLastMonth, GetNextMonth, GetThisQuarter, GetLastQuarter, GetNextQuarter, GetThisYear, GetLastYear, GetNextYear, GetLast12Months, GetMonthToDate, GetQuarterToDate, GetYearToDate, GetMonthFromDate, GetQuarterFromDate, GetYearFromDate. Documentation for Date Class updated.
  3. July 24, 2010: Documentation done for Date Class.
  4. July 28, 2010: 6 new methods added to the Date Class: DateDiff, DateAdd and GetDate to get date differences and SetWeekStartDay, GetWeekStartDay and GetWeekFirstDay that deal with different start day of a week. By default the week start day is set to Monday, but can now be set to any day. Documentation for Date Class also updated.
  5. September 3, 2010: Added FreeFiles parameter to the ScanFiles method in the File Search Class. This allows the method to be called repeatedly for different folders or different wildcards without having to handle the files in the Files queue until all the files have been read.
  6. September 3, 2010: Added attributes parameter to the FileExists method to Core Class. This allows the method to be used to find more than just FF_:Normal files, such as directories, hidden files etc.
  7. September 5, 2010: Added FindInString method to StringClass.
  8. September 6, 2010: Documentation done for INI Class.

Fixes:

  1. July 21, 2010: HtmlToColor did only handle html color value strings that started with '#' Fixed so now it can handle html value colors without the '#' prefix. I.e. 'C1D8F0' instead of '#C1D8F0'
  2. September 3, 2010: ScanFiles did not check if the path passed in ended with a backslash which caused an error. Fixed.
  3. September 5, 2010: PROC attribute missing from SetFileAttrib method in Core Class. Fixed.

Version 1.1.2387 - June 6, 2010

Fixes:

  1. June 6, 2010:: Installer updated for Clarion 7.2.
  2. June 1, 2010:: Problem with GPF in ITRun32C7.dll. Moved the dll from Borland C++ to Visual C++ which fixed the problem.
  3. March 17, 2010:: ITRun32.dll and ITRun32C7.dll were not compiled correctly. Fixed.
  4. March 22, 2010:: Information about FNS_Parts and IT_GUID in the Core Class were switched. Fixed.
  5. May 31, 2010:: Date class would not always return the correct date name. Fixed.

Version 1.1.2374 - March 15, 2010

Updates, features:

  1. March 11, 2010:: Added IsUserAdmin and IsProgramElevated methods to the ShellClass.
  2. March 4, 2010:: Documentation done for Armadillo Class and Armadillo Code Generator Class.
  3. March 3, 2010:: Added "Icetips: Prepare multi-DLL app" template. It lets you export global data to txd file ready to import into a dictionary. It also allows you to export procedures that are set to export as external procedures in a TXA file. This way you can export them as external files in TXA and then import them into apps that need to use those procedures as external procedures.

Fixes:

  1. March 3, 2010:: Install did not correctly replace PRIVATE property on INIFile critical section in ABUTIL.INC. Fixed
  2. March 3, 2010:: Install did not handle ITRun32.dll and ITRun32C7.dll install correctly. Fixed.

Version 1.1.2367 - February 26, 2010

Updates, features:

  1. February 17, 2010: : Added GetDriveSerialNumber and GetVolumeInfo methods to File Class
  2. February 17, 2010: : Documentation for File Class completed.
  3. February 20, 2010: : Thread Limiter class and template in Alpha testing.

Fixes:

  1. February 11, 2010:: ProgressClass would not show a full progress on Vista. This was a known problem with Vista and later machine where MS changed the way progress bars were updated on themed windows. The trick is to update the progressbar then take it backward one notch. Fixed.

Version 1.1.2359 - January 27, 2010

Updates, features:

  1. February 2, 2010:: Added CheckOplocks and SetOplocksOff methods to the Utility Class.

Version 1.1.2356 - January 26, 2010

Updates, features:

  1. String class would set LastAPIError and LastAPIErrorCode to the error returned by WriteFile rather than CreateFile if CreateFile failed. Fixed.
  2. String class would set LastAPIError and LastAPIErrorCode to the error returned by ReadFile rather than CreateFile if CreateFile failed. Fixed.
  3. Added DumpLinesInQ method to String class to make it easy to move contents of the Lines queue property to a local queue
  4. LongToHex moved from UtilityClass to CoreClass
  5. Added URLEncode method.
  6. Added parameter to SelectFile method in the FileSelectClass. This allows to passing the entire filename to the function and suggesting the passed filename rather than just the folder name.
  7. Added Clarion Resources, including what is added by the "Add Compile Date/Time to version" template, to the Version class.
  8. Added CreateFolder method to the ShellClass. It simply wraps the CreateDirectory in a new name.
  9. Added IsAppframe method to the CoreClass. It returns true if the current target is an appframe window.
  10. ITINIClass documentation finished.
  11. GetFileSize method added to the CoreClass. The method supports > 2GB file sizes.
  12. Added ITFileQueueLS queue type which uses a DECIMAL(15,0) for the file size. This structure is NOT compatible with DIRECTORY, but can be used to store similar information with large file sizes. See GetFileSize.
  13. Added pLocation parameter to GetLastAPIError in CoreClass. This allows passing a location string that is shown in the output text.
  14. Added GetWeekNumber method to DateClass that uses ISO8601 to calculate the current week number.
  15. Added FileExists method to CoreClass.
  16. Added ByteToHex method to CoreClass.
  17. Added AppendToLine method to String Class.
  18. Added SetLineValue method to String Class.
  19. Added GetWord method to String Class.
  20. Added SetPunctuationString method to String Class.
  21. Added SetSplitStringProgress method to String Class.

Fixes:

  1. ODS method used a fixed 2K string. This could cause confusion if the output string was bigger and only the first 2K showed up in Debug View. Modified to contain all the data passed into the method. Fixed.
  2. AssociateProgram method in Shell class was not working correctly. Fixed.
  3. GetAssociatedProg could fail if extension was more than 4 characters long including the dot prefix. Fixed.
  4. AddLine method had a potential memory abuse problem that would cause a GPF and out of memory errors when building very large queues. Fixed.
  5. SearchReplace could fail to replace if the replace string was shorter than the search for string. Fixed.
  6. GetSpecialFolder used 0{PROP:Handle} to get a window handle. However since this method can be called before any window has been opened it could cause a GPF. Changed to use the desktop window instead. Fixed.
  7. Standardized Window Code template didn't generate code correctly for the data and routine embeds (an extra couple of spaces was added to the start of the TXA code). Fixed.
  8. ReadDirectories method in the File Search Class counted "." and ".." files. Fixed.
  9. File Search Class used LONGs for files sizes and totalled file sizes. Changed to Decimal(15,0).
  10. ScanFiles method in the File Search Class did not return the correct number of files. Fixed.
  11. PathIsDir in CoreClass did not call the correct API. Fixed.
  12. Added PROC attribute to GetLastAPIErrorCode method.
  13. Added ReturnEmpty parameter to ExpandEnvString method in Shell Class.

Version 1.1.2351 - April 15, 2009

Updates, features:

  1. Utility class documentation finished.
  2. String class documentation finished.
  3. All topics in the help show when they were last updated. Does not show in the PDF though.
  4. RemoveForwardSlash and RemoveBackSlash did not work correctly if the string started and ended with the slash and both should be removed. Fixed.
  5. GetFilePart and RemoveBackSlash added to Core Class Demo.
  6. Added "pParameters" parameter to ITRunFile to allow passing of parameters to it.
  7. Added SetEnvVar method to Shell Class to allow setting environment variables - needs testing.
  8. Added ExpandEnvString method to Shell Class to allow expanding environment variables.
  9. Added demo of ExpandEnvString to both expand a variable in a string and also us ITRun with %SystemRoot%\System32\taskmgr.exe which runs the task manager.
  10. Added code template to call the GetSpecialFolder method of the Shell Class.

Fixes:

  1. In some circumstances the SplitString method of the string class could cause a GPF because the end of the datastream was miscalculated as negative. Fixed.
  2. ReadFileToString method in the string class was opening the file to read in read+write mode. Changed to read mode only.
  3. The OL member of the Lines queue was declared as Cstring(1025) and thus restricted to 1K of data. It is now dynamic.
  4. NOTE: IF you have worked with the Lines queue manually where you have used Free(ITS.Lines) you now need to call the FreeLines method instead of Free(ITS.Lines) or the equivalent or you risk memory leaks. Fixed.

Version 1.1.2320 - November 11, 2008

Updates, features:

  1. Utility class documentation finished.
  2. String class documentation finished.
  3. All topics in the help show when they were last updated. Does not show in the PDF though.
  4. RemoveForwardSlash and RemoveBackSlash did not work correctly if the string started and ended with the slash and both should be removed. Fixed.
  5. GetFilePart and RemoveBackSlash added to Core Class Demo.

Version 1.1.2319 - Tuesday, September 02, 2008

Updates, features:

  1. New method in CoreClass, RemoveForwardSlash

Fixes:

  1. MS Header template had the wrong image size. Fixed.
  2. tThemedControls was missing the TYPE attribute. Fixed.
  3. "Add Header Sort to Queue" template made use of a class property (UsePictureForCase) that was not in Clarion 6.1 causing compile errors in Clarion versions prior to Clarion 6.2. Fixed.
  4. SelectFile in the FileSelectClass could clear variable when the FileDialog was canceled. Regression in build 2316. Fixed.
  5. ITUtilityClass.inc file was not update with current version number. Fixed.
  6. SearchReplace method in the CoreClass would fail when searching for '/' when the string to be searched contained '//' - only the first character would be replaced. Fixed.
  7. SearchReplace method in the CoreClass would fail when searching for '/' and replacing with '//' - it would fill the entire string with '/' from the first occurance. This only happens if the replace string was longer and if both search and replace contained all the same character. Fixed.

Version 1.1.2316 - August 27, 2008

Updates, features:

  1. Core Class documentation finished.
  2. Demo apps will now be done for each individual class, rather than for the whole project as it get's way too big.
  3. Core Class demo application finished.
  4. LastApiError and LastApiErrorCode properties added to class. They are set in the GetLastAPIError and GetLastAPIErrorCode
  5. Install improved and tested on a clean Clarion 6.3 9059 platform.
  6. Build Automator script created to automatically handle new builds.

Fixes:

  1. GetFileAttrib(String...) was not passing the string on to the GetFileAttrib(*CString...) method, causing it to fail since no filename was passed to it. Fixed.
  2. GetLastApiError and GetLastAPIErrorCode methods moved from WindowsClass to CoreClass
  3. ITWinWiz.tpl contained a reference to a template that was not included with the Utilities. Fixed.

Login

User Name:

Password: