TixUtils library
The default extension DLL implementation includes a number of helper functions that may be useful when you implement your own extension DLL. None of the function require special runtime support; they can be compiled without the use of the C/C++ runtime library, MFC, or any other libraries. Only a minimal set of standard Windows DLLs are required on the target system.
The functions are documented in their header file; their full source code is also included. Please consult the following files for details:
- InstallMate 9\Tix\TixUtils.h
- The annotated declarations of the utility functions.
- InstallMate 9\Tix\TixUtils.c
- The source code for all utility functions.
Memory allocation
Function |
Description |
TixMalloc |
Allocate a block of unitialized memory |
TixCalloc |
Allocate a block of zero-filled memory |
TixFree |
Release an allocated block of memory |
Null-terminated string and memory block manipulation
Function |
Description |
TixMemMove |
Copy bytes in memory (overlapping source and destinations ranges are allowed) |
TixStrCopy |
Copy a null-terminated string |
TixStrNCopy |
Copy a null-terminated string up to a given maximum length |
TixStrDup |
Allocate a copy of a null-terminated string |
TixStrDupA2W |
Allocate a Unicode copy of a null-terminated multibyte string |
TixStrDupW2A |
Allocated a multibyte copy of a null-terminated Unicode string |
TixStrToU |
Parse an unsigned decimal integer number from a null-terminated string |
TixLoadStringEx |
Load a (possibly localized) string resource from the extension DLL's resources |
TixParseVersion |
Parse a dotted version number a.b.c.d from a null-terminated string |
TixFormatVersion |
Format a version number a.b.c.d to a null-terminated string buffer |
File and directory path operations
Function |
Description |
TixMakePath |
Combine a directory path and file name to a new path |
TixGetFileName |
Return a pointer to the rightmost component in a file or directory path |
TixPathRemoveRight |
Removed the rightmost component from a file or directory path |
File and directory operations
Note: Symbolic <pathnames> are allowed and will be resolved automatically.
Function |
Description |
TixCreateDirectory |
Create a new directory |
TixCopyDirectory |
Copy a directory and its contents, with optional depth-limited recursion |
TixDeleteDirectory |
Delete a directory and its files, without recursion |
TixDeleteDirectoryRecursive |
Delete a directory and its files, including all its subdirectories |
TixDeleteFiles |
Delete all files that match a given wildcard specification |
TixFileExists |
Check if a file or directory exists |
TixFindFile |
Perform a recursive search for a file or directory that matches a given wildcard specification |
TixGetVersionInfo |
Retrieve the version information from an executable file |
TixGetFileVersion |
Retrieve the file version from an executable file |
TixGetOcxVersion |
Retrieve the installed version of an ActiveX control, given its CLSID or ProgID |
TixGetOcxVersionEx |
Extended version of TixGetOcxVersion that checks a list of CLSID and/or ProgIDs. |
TixCreateShortcut |
Create a new shortcut (i.e., shell link) to a file or folder. |
TixDeleteShortcut |
Delete a shortcut to a file or folder. |
User interaction
Function |
Description |
TixMessageBox |
Display a message box with optionally localized text. In quiet mode, returns the default response. |
TixDialogBox |
Display a dialog box with optionally localized content. |
TixQueryDirectory |
Display the standard Windows Select Folder dialog box and returns the selected directory path. |
Process-related operations
Function |
Description |
TixWait |
Suspend the installer process for a number of milliseconds. |
TixIsProcessRunning |
Check if another process is running. |
TixIsProcessRunningEx |
Enumerate all running instances of a given process name and perform a callback action on each one. |
TixEnumProcesses |
Enumerate all running processes and perform a callback action on each one. |
TixIsProcessRunningNT |
Enumerate all running instances of a given process name, using a Windows NT-specific method. |
Debugging macros
Macro |
Description |
TIX_OPENLOG |
Open the debugging log file; only has effect in Debug builds. |
TIX_CLOSELOG |
Close the debugging log file; only has effect in Debug builds. |
TIX_LOG |
Write a message to the debugging log file; only has effect in Debug builds. |
TIX_MSGNAME |
Returns the symbolic name of the given TIX message number. |