The settingsfile contains multiple settings for default behavior of the program. This way it is possible to use the default standard operation or create a specific program with just an input screen and a button to run some code.


<Settings>

       <!-- Advanced Category! -->

       <DisableSettings>false</DisableSettings>

       <DisableSplash>false</DisableSplash>

       <DisableSizeInfo>false</DisableSizeInfo>

<Developer>false</Developer>

       <!-- Folders Category! -->

       <CodeFolder>.\Code</CodeFolder>

       <AddOnFolder>.\AddOn</AddOnFolder>

       <ShortCutFolder>.\Shortcuts</ShortCutFolder>

       <LogFolder>.\Log</LogFolder>

       <!-- Text Style Category! -->

       <TextCustomDescriptionFile />

       <TextRulesDescriptionFile />

       <TextRulesDescription />

       <TextAnimationEnabled>false</TextAnimationEnabled>

       <TextStylesChangeable>true</TextStylesChangeable>

         <TextMaxSize>10240</TextMaxSize>

       <!-- Status Style Category! -->

       <StatusCustomDescriptionFile />

       <StatusRulesDescriptionFile />

       <StatusRulesDescription />

       <StatusAnimationEnabled>false</StatusAnimationEnabled>

       <StatusStylesChangeable>true</StatusStylesChangeable>

       <StatusScrollBarEnabled>true</StatusScrollBarEnabled>

       <!-- Appearance Category! -->

       <Title>Debug</Title>

       <ShowTreeView>true</ShowTreeView>

       <ShowText>true</ShowText>

       <PanelMode>1</PanelMode>

       <ReadOnlyText>false</ReadOnlyText>

       <TreeviewEnableScreens>true</TreeviewEnableScreens>

       <DefaultScreenFile />

       <ShowTreeviewRefreshIcon>true</ShowTreeviewRefreshIcon>

       <UseTreeviewDrawMode>true</UseTreeviewDrawMode>

       <ShowRunLights>true</ShowRunLights>

<UseTreeviewAdvancedIconExtraction>true</UseTreeviewAdvancedIconExtraction>

       <!-- Log Category! -->

       <LogLevel>

               <Value>1</Value>

       </LogLevel>

       <LogMaxSize>1024</LogMaxSize>

       <!-- Addons Category! -->

       <IncludeAddons>*</IncludeAddons>

       <ExcludeAddons>-</ExcludeAddons>

       <!-- Menus Category! -->

       <MenuTopFile>.\Code\Menu\example1.mnu</MenuTopFile>

       <MenuLowFile />

       <!-- Behavior Category! -->

       <TextEditor>C:\Program Files (x86)\Notepad++\notepad++.exe</TextEditor>

       <ShowStatusEvents>2</ShowStatusEvents>

       <StatusTextForCodeStart>Code is running ...!</StatusTextForCodeStart>

       <StatusTextForCodeFinished>Finished!#CRLF#Result: #RESULT#</StatusTextForCodeFinished>

       <SaveUserConfigOnExit>false</SaveUserConfigOnExit>

       <LoadUserConfigOnStart>false</LoadUserConfigOnStart>

       <MultiReplaceOnAnalyse></MultiReplaceOnAnalyse>

       <RunScriptFileOnStart>Init.txt</RunScriptFileOnStart>

       <RunScriptFileOnExit />

       <UseVariables />

       <ShowExtensions>DATA;URL;BAT;XML;PS1;CMD;XML;VBS;DOCX;SQL;PDF</ShowExtensions>

<DisableEditOnExtensions>DOCX;PDF;</DisableEditOnExtensions>

         <SingleClickExtension>XML;DATA;NFO</SingleClickExtension>

       <RunInAddOnExtension>DATA;URL;BAT;PS1;XML;CMD</RunInAddOnExtension>

         <AuxExtensions />

         <AuxExtensionsScriptFile />

       <EnableTreeviewPrint>false</EnableTreeviewPrint>

       <CancelDisabled>false</CancelDisabled>

       <CodeTimerInterval>-1</CodeTimerInterval>

       <CodeTimerFile></CodeTimerFile>

       <HelpUrl>IT-Tool.chm</HelpUrl>

       <!-- Layout Category! -->

       <Width>0</Width>

       <Height>0</Height>

       <TopMost>false</TopMost>

       <TopPad>0</TopPad>

       <BottomPad>0</BottomPad>

       <LeftPad>0</LeftPad>

       <RightPad>0</RightPad>

       <BackColor>Control</BackColor>

       <ForeColor>Black</ForeColor>

       <BookmarkColor>SteelBlue</BookmarkColor>

<VisualStyle>0</VisualStyle>

       <!-- Test Category! -->

       <HeaderScriptFile />

       <BodyScriptFile />

       <FooterScriptFile />

       <StatusTextForTestStart>Test is running ...!</StatusTextForTestStart>

</Settings>



Shift-Alt-S will open the settings form to change settings (if not disabled).


ShowExtensions determines which filetypes can also be shown in the treeview.  The filetypes in RunInAddOnExtensions will be run within the program, if possible, otherwise they will be run by the default windows program. For file extensions that are not known to IT-Tool, the system icon is determined or a default question mark icon is shown. It is possible to add your own icon in the treeview by adding an image to the AddOn folder. Images should be png, jpg, jpeg or gif and preferably size 48x48 px. The name is the extension name, e.g. “DOC.png”. For link files (.lnk), the target icon is determined.

The setting UseTreeviewAdvancedIconExtraction will determine the method how an icon is extracted from a file. This value can be changed in case the icon does not look good (like a black background).


SingleClickExtension (which also works on a selection change by keyboard) determines which extension are handled by a single mouse click instead of a double click.

DisableEditOnExtensions determines which extension cannot be edited via the right mouse menu


TextMaxSize will determine when a large amount of text in the textbox is truncated. This will improve the GUI response time. Note that the internal value of the textbox is still complete!


AuxExtensions determines which filetypes, should be handled via a script, as set in AuxExtensionsScriptFile, or just shown in the textbox if AuxExtensionsScriptFile is empty.


UseVariables  will create variables, which can be used in each code. E.g. an environment can be set once and used for each code.


RunScriptFileOnStart is the scriptfile that is run when IT-Tool is started. This way, e.g. variables can be initialized once.

RunScriptFileOnExit is the scriptfile that is run when IT-Tool is ended. This way, e.g. variables can be stored.


MultiReplaceOnAnalyse is an XML file, that contains a MultiReplaceXML. The replace commands are handled before each script is run, during the script analyse. The XML can also be set via script using the variable ‘SCRIPTMRX’.


 CodeTimerInterval (in ms) and CodeTimerFile (path of scriptfile) can be set to run a script file on a regular base automatic. It can also be set or enabled/disabled via Commands.


TopMost is a  setting to keep the program always on top of other programs.


ShowRunLights makes the stoplight active in the lower status bar. Whenever code is running, the light will turn red.

Title will be added to the titlebar in the application.

LogMaxSize determines the maximum size that the logfile should be (in kb). When the logsize exceeds this value, a logfile with counter is written to the Log folder.  When multiple log files are written, the folder is opened on ALT L.


LogLevel determines which logging is shown and is determined bitwise:
value < 0 disables logging
value 0 is only errorlogging
bit 0: Code handling steps  (default on), log is always shown when loglevel>0
bit 1: Analyse Cleanup
bit 2: Analyse info round 1
bit 3: Analyse info round 2
bit 4: TBD
bit 5: TBD
bit 6: Add timing to log
bit 7: Functions call plus arguments log from parser


Addons can be enabled or disabled via the IncludeAddons and ExcludeAddons settings. It is recommended to use IncludeAddons only, ExcludeAddons was created for development purposes.


Also added are some properties to set the forecolor, backcolor and paddings of the form. These settings are specifically handy when using windows 10 and you do not like the minimum border and color layout…


When no arguments are provided when starting the program, it loads the “settings.xml” file or creates this files, when not existing. A different settingsfile can be provided via an argument.


A file can be provided as argument: The tool is then started as: “IT-Tool.exe <fileName>”.

When the argument has the extension “.txt”, the code in that text file is run in console mode and the program is closed after the run. For console mode an additional argument can be provided for the AddOnFolder. Default value will be “.\AddOn”.

When the argument has the extension “.xml”, that file is used as settingsfile.


All used DLL files can optionally be placed in a subfolder ‘DDL’


Some settings can be set or read via script.

Functions ChangeAppSettings() and SaveAppSettings can be called via script to change or save the settings.


LoadUserConfigOnStart and SaveUserConfigOnExit will determine if the last screenposition and size is used for the next time IT-Tool is started. A config file is used on a computer for each user per title.


During start, it is checked if a file "RunOnce.txt" is present in the base path. If so, the script in that file is run once and the file is deleted, so it will not run anymore.




Created with the Personal Edition of HelpNDoc: Write eBooks for the Kindle