Unit Ultibo - Ultibo.org
Return to Unit Reference
Description
Ultibo Interface unit
Constants
64bit constants MAXLONGLONG_*
MAXLONGLONG = $7fffffffffffffff;
|
Thread constants CREATE_*
CREATE_SUSPENDED = $00000004;
|
Message constants PM_*
PM_NOREMOVE = $0000;
|
|
PM_REMOVE = $0001;
|
|
PM_NOYIELD = $0002;
|
Timezone Id TIME_ZONE_ID_*
TIME_ZONE_ID_UNKNOWN = Timezone.TIME_ZONE_ID_UNKNOWN;
|
|
TIME_ZONE_ID_STANDARD = Timezone.TIME_ZONE_ID_STANDARD;
|
|
TIME_ZONE_ID_DAYLIGHT = Timezone.TIME_ZONE_ID_DAYLIGHT;
|
|
TIME_ZONE_ID_INVALID = Timezone.TIME_ZONE_ID_INVALID;
|
Shutdown/Restart EWX_*
EWX_LOGOFF = $00000000;
|
|
EWX_SHUTDOWN = $00000001;
|
|
EWX_REBOOT = $00000002;
|
|
EWX_FORCE = $00000004;
|
|
EWX_POWEROFF = $00000008;
|
|
EWX_FORCEIFHUNG = $00000010;
|
Drive type DRIVE_*
DRIVE_UNKNOWN = 0;
|
|
DRIVE_NO_ROOT_DIR = 1;
|
|
DRIVE_REMOVABLE = 2;
|
|
DRIVE_FIXED = 3;
|
|
DRIVE_REMOTE = 4;
|
|
DRIVE_CDROM = 5;
|
|
DRIVE_RAMDISK = 6;
|
Symbolic link SYMBOLIC_LINK_*
SYMBOLIC_LINK_FLAG_FILE = $00000000;
|
The link target is a file |
SYMBOLIC_LINK_FLAG_DIRECTORY = $00000001;
|
The link target is a directory |
Local memory LMEM_*
LMEM_FIXED = $0000;
|
|
LMEM_MOVEABLE = $0002;
|
|
LMEM_NOCOMPACT = $0010;
|
|
LMEM_NODISCARD = $0020;
|
|
LMEM_ZEROINIT = $0040;
|
|
LMEM_MODIFY = $0080;
|
|
LMEM_DISCARDABLE = $0F00;
|
|
LMEM_VALID_FLAGS = $0F72;
|
|
LMEM_INVALID_HANDLE = $8000;
|
|
LHND = (LMEM_MOVEABLE or LMEM_ZEROINIT);
|
|
LPTR = (LMEM_FIXED or LMEM_ZEROINIT);
|
|
NONZEROLHND = (LMEM_MOVEABLE);
|
|
NONZEROLPTR = (LMEM_FIXED);
|
|
Global memory GMEM_*
GMEM_FIXED = $0000;
|
|
GMEM_MOVEABLE = $0002;
|
|
GMEM_NOCOMPACT = $0010;
|
|
GMEM_NODISCARD = $0020;
|
|
GMEM_ZEROINIT = $0040;
|
|
GMEM_MODIFY = $0080;
|
|
GMEM_DISCARDABLE = $0100;
|
|
GMEM_NOT_BANKED = $1000;
|
|
GMEM_SHARE = $2000;
|
|
GMEM_DDESHARE = $2000;
|
|
GMEM_NOTIFY = $4000;
|
|
GMEM_LOWER = GMEM_NOT_BANKED;
|
|
GMEM_VALID_FLAGS = $7F72;
|
|
GMEM_INVALID_HANDLE = $8000;
|
|
GHND = (GMEM_MOVEABLE or GMEM_ZEROINIT);
|
|
GPTR = (GMEM_FIXED or GMEM_ZEROINIT);
|
|
Virtual page PAGE_*
PAGE_NOACCESS = $01;
|
|
PAGE_READONLY = $02;
|
|
PAGE_READWRITE = $04;
|
|
PAGE_WRITECOPY = $08;
|
|
PAGE_EXECUTE = $10;
|
|
PAGE_EXECUTE_READ = $20;
|
|
PAGE_EXECUTE_READWRITE = $40;
|
|
PAGE_EXECUTE_WRITECOPY = $80;
|
|
PAGE_GUARD = $100;
|
|
PAGE_NOCACHE = $200;
|
|
PAGE_WRITECOMBINE = $400;
|
Virtual memory MEM_*, SEC_*, WRITE_*
MEM_COMMIT = $1000;
|
|
MEM_RESERVE = $2000;
|
|
MEM_DECOMMIT = $4000;
|
|
MEM_RELEASE = $8000;
|
|
MEM_FREE = $10000;
|
|
MEM_PRIVATE = $20000;
|
|
MEM_MAPPED = $40000;
|
|
MEM_RESET = $80000;
|
|
MEM_TOP_DOWN = $100000;
|
|
MEM_WRITE_WATCH = $200000;
|
|
MEM_PHYSICAL = $400000;
|
|
MEM_4MB_PAGES = DWORD($80000000);
|
|
SEC_FILE = $800000;
|
|
SEC_IMAGE = $1000000;
|
|
SEC_RESERVE = $4000000;
|
|
SEC_COMMIT = DWORD($8000000);
|
|
SEC_NOCACHE = $10000000;
|
|
MEM_IMAGE = SEC_IMAGE;
|
|
WRITE_WATCH_FLAG_RESET = $01;
|
|
MEM_LARGE_PAGES = $20000000;
|
Processor architecture PROCESSOR_ARCHITECTURE_*
PROCESSOR_ARCHITECTURE_INTEL = 0;
|
|
PROCESSOR_ARCHITECTURE_MIPS = 1;
|
|
PROCESSOR_ARCHITECTURE_ALPHA = 2;
|
|
PROCESSOR_ARCHITECTURE_PPC = 3;
|
|
PROCESSOR_ARCHITECTURE_SHX = 4;
|
|
PROCESSOR_ARCHITECTURE_ARM = 5;
|
|
PROCESSOR_ARCHITECTURE_IA64 = 6;
|
|
PROCESSOR_ARCHITECTURE_ALPHA64 = 7;
|
|
PROCESSOR_ARCHITECTURE_MSIL = 8;
|
|
PROCESSOR_ARCHITECTURE_AMD64 = 9;
|
|
PROCESSOR_ARCHITECTURE_UNKNOWN = $FFFF;
|
|
Processor type PROCESSOR_*
PROCESSOR_INTEL_386 = 386;
|
|
PROCESSOR_INTEL_486 = 486;
|
|
PROCESSOR_INTEL_PENTIUM = 586;
|
|
PROCESSOR_INTEL_IA64 = 2200;
|
|
PROCESSOR_ARM_6 = 60999;
|
|
PROCESSOR_ARM_7 = 70999;
|
|
PROCESSOR_ARM_8 = 80999;
|
Version information VER_*
VER_PLATFORM_ULTIBO = 10011;
|
File attribute FILE_ATTRIBUTE_*
FILE_ATTRIBUTE_READONLY = $00000001;
|
|
FILE_ATTRIBUTE_HIDDEN = $00000002;
|
|
FILE_ATTRIBUTE_SYSTEM = $00000004;
|
|
FILE_ATTRIBUTE_DIRECTORY = $00000010;
|
|
FILE_ATTRIBUTE_ARCHIVE = $00000020;
|
|
FILE_ATTRIBUTE_DEVICE = $00000040;
|
|
FILE_ATTRIBUTE_NORMAL = $00000080;
|
|
FILE_ATTRIBUTE_TEMPORARY = $00000100;
|
|
FILE_ATTRIBUTE_SPARSE_FILE = $00000200;
|
|
FILE_ATTRIBUTE_REPARSE_POINT = $00000400;
|
|
FILE_ATTRIBUTE_COMPRESSED = $00000800;
|
|
FILE_ATTRIBUTE_OFFLINE = $00001000;
|
|
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = $00002000;
|
|
FILE_ATTRIBUTE_ENCRYPTED = $00004000;
|
Volume information FILE_*
FILE_CASE_SENSITIVE_SEARCH = $00000001;
|
|
FILE_CASE_PRESERVED_NAMES = $00000002;
|
|
FILE_UNICODE_ON_DISK = $00000004;
|
|
FILE_PERSISTENT_ACLS = $00000008;
|
|
FILE_FILE_COMPRESSION = $00000010;
|
|
FILE_VOLUME_QUOTAS = $00000020;
|
|
FILE_SUPPORTS_SPARSE_FILES = $00000040;
|
|
FILE_SUPPORTS_REPARSE_POINTS = $00000080;
|
|
FILE_SUPPORTS_REMOTE_STORAGE = $00000100;
|
|
FILE_VOLUME_IS_COMPRESSED = $00008000;
|
|
FILE_SUPPORTS_OBJECT_IDS = $00010000;
|
|
FILE_SUPPORTS_ENCRYPTION = $00020000;
|
|
FILE_NAMED_STREAMS = $00040000;
|
|
FILE_READ_ONLY_VOLUME = $00080000;
|
Dos device DDD_*
DDD_RAW_TARGET_PATH = $00000001;
|
|
DDD_REMOVE_DEFINITION = $00000002;
|
|
DDD_EXACT_MATCH_ON_REMOVE = $00000004;
|
|
DDD_NO_BROADCAST_SYSTEM = $00000008;
|
|
DDD_LUID_BROADCAST_DRIVE = $00000010;
|
Final path flag DDD_*
FILE_NAME_NORMALIZED = $00000000;
|
Return the normalized file name. This is the default. |
FILE_NAME_OPENED = $00000008;
|
Return the opened file name (not normalized) (Not Supported by Ultibo) |
VOLUME_NAME_DOS = $00000000;
|
Return the path with the drive letter. This is the default. |
VOLUME_NAME_GUID = $00000001;
|
Return the path with a volume GUID path instead of the drive name (Ultibo returns the volume path, not GUID path) |
VOLUME_NAME_NONE = $00000004;
|
Return the path with no drive information (Not Supported by Ultibo) |
VOLUME_NAME_NT = $00000002;
|
Return the NT device object path (Ultibo returns the device path) |
Time null TIME_NULL_*
TIME_NULL_TIME:TFileTime = (dwLowDateTime:$00000000;dwHighDateTime:$00000000);
|
Drive constants *_DRIVE
DEFAULT_DRIVE = 0;
|
0 is Current Drive |
INVALID_DRIVE = 0;
|
Where Current is not appropriate |
MIN_DRIVE = 1;
|
1 = A:, 2 = B:, 3 = C:, 26 = Z: etc |
MAX_DRIVE = 26;
|
|
NON_DRIVE = 27;
|
27 for Non Drive (UNC) Path |
DRIVE_NAMES:array[DEFAULT_DRIVE..NON_DRIVE] of String = (
| |
,'A:\','B:\','C:\','D:\','E:\','F:\','G:\','H:\','I:\','J:\','K:\','L:\','M:\',
|
|
'N:\','O:\','P:\','Q:\','R:\','S:\','T:\','U:\','V:\','W:\','X:\','Y:\','Z:\','\\');
|
|
DRIVE_ROOTS:array[DEFAULT_DRIVE..NON_DRIVE] of String = (
| |
,'A:','B:','C:','D:','E:','F:','G:','H:','I:','J:','K:','L:','M:',
|
|
'N:','O:','P:','Q:','R:','S:','T:','U:','V:','W:','X:','Y:','Z:','\\');
|
|
DRIVE_MASKS:array[MIN_DRIVE..MAX_DRIVE] of LongWord = (
| |
$00000001,$00000002,$00000004,$00000008,
|
|
$00000010,$00000020,$00000040,$00000080,
|
|
$00000100,$00000200,$00000400,$00000800,
|
|
$00001000,$00002000,$00004000,$00008000,
|
|
$00010000,$00020000,$00040000,$00080000,
|
|
$00100000,$00200000,$00400000,$00800000,
|
|
$01000000,$02000000);
|
|
DRIVE_A = 1;
|
|
DRIVE_B = 2;
|
|
DRIVE_C = 3;
|
|
Path and file *_PATH, _FILE*
MAX_FAT_PATH = 64;
|
|
MAX_FAT_FILE = 12;
|
|
MAX_VFAT_PATH = 260;
|
|
MAX_VFAT_FILE = 255;
|
|
FAT_PATH_CHAR = '\';
|
Path separator |
FAT_NAME_CHAR = ':';
|
Stream separator |
FAT_FILE_CHAR = '.';
|
Extension separator |
FAT_DRIVE_CHAR = ':';
|
Drive separator |
UNIX_PATH_CHAR = '/';
|
Path separator |
UNIX_NAME_CHAR = ':';
|
Stream separator |
UNIX_FILE_CHAR = '.';
|
Extension separator |
Invalid filename chars INVALID_FILENAME_CHARS*
SHORT_FILENAME_SUBST_CHARS:set of Char = ['+','=',',','[',']',';'];
|
Wildcard filename chars WILDCARD_FILENAME_CHAR*
MACRO_FILENAME_CHAR:Char = '%';
|
|
WILDCARD_FILENAME_CHAR:Char = '*';
|
Type definitions
Signed types
INT = GlobalTypes.INT;
|
|
BOOL = GlobalTypes.BOOL;
|
Note: Declared in Windows as LongBool but declared here as ByteBool for GCC compatibility |
LONG = GlobalTypes.LONG;
|
Unsigned types
UINT = GlobalTypes.UINT;
|
|
UCHAR = GlobalTypes.UCHAR;
|
|
USHORT = GlobalTypes.USHORT;
|
|
ULONG = GlobalTypes.ULONG;
|
Pointer types
PVOID = GlobalTypes.PVOID;
|
|
LPVOID = GlobalTypes.LPVOID;
|
|
LPCVOID = GlobalTypes.LPCVOID;
|
|
LPBOOL = GlobalTypes.LPBOOL;
|
See note above for BOOL declaration |
PLONG = GlobalTypes.PLONG;
|
|
LPLONG = GlobalTypes.LPLONG;
|
|
LPDWORD = GlobalTypes.LPDWORD;
|
|
INT_PTR = GlobalTypes.INT_PTR;
|
|
UINT_PTR = GlobalTypes.UINT_PTR;
|
|
LONG_PTR = GlobalTypes.LONG_PTR;
|
|
ULONG_PTR = GlobalTypes.ULONG_PTR;
|
|
DWORD_PTR = GlobalTypes.DWORD_PTR;
|
|
PDWORD_PTR = GlobalTypes.PDWORD_PTR;
|
64bit types
LONGLONG = GlobalTypes.LONGLONG;
|
|
ULONGLONG = GlobalTypes.ULONGLONG;
|
|
DWORDLONG = GlobalTypes.DWORDLONG;
|
Quad types
QUAD = _QUAD;
TQuad = _QUAD;
UQUAD = QUAD;
PQuad = ^TQuad;
_QUAD = record
| Note: QUAD is for those times we want an 8 byte aligned 8 byte long structure which is NOT really a floating point number. Use DOUBLE if you want an FP number. | |
DoNotUseThisField:Double;
|
|
Locale Id
LCID = Locale.LCID;
|
|
PLCID = Locale.PLCID;
|
Language Id
LANGID = Locale.LANGID;
|
|
PLANGID = Locale.PLANGID;
|
Language group Id
Locale type
Calendar type
CALTYPE = Locale.CALTYPE;
|
Calendar Id
Large integer
LARGE_INTEGER = _LARGE_INTEGER;
TLargeInteger = LARGE_INTEGER;
PLARGE_INTEGER = ^LARGE_INTEGER;
PLargeInteger = LPLARGE_INTEGER;
LPLARGE_INTEGER = ^LARGE_INTEGER;
_LARGE_INTEGER = record
case Integer of
|
|
0: (
|
|
LowPart: DWORD;
|
|
HighPart: LONG);
|
|
1: (
|
|
QuadPart: ULONGLONG);
|
OS version information
OSVERSIONINFO = _OSVERSIONINFO;
TOsVersionInfo = OSVERSIONINFO;
POsVersionInfo = LPOSVERSIONINFO;
LPOSVERSIONINFO = ^OSVERSIONINFO;
_OSVERSIONINFO = record
dwOSVersionInfoSize:DWORD;
|
|
dwMajorVersion:DWORD;
|
|
dwMinorVersion:DWORD;
|
|
dwBuildNumber:DWORD;
|
|
dwPlatformId:DWORD;
|
|
szCSDVersion:array [0..127] of AnsiCHAR;
|
System information
SYSTEM_INFO = _SYSTEM_INFO;
TSystemInfo = SYSTEM_INFO;
PSystemInfo = LPSYSTEM_INFO;
LPSYSTEM_INFO = ^SYSTEM_INFO;
_SYSTEM_INFO = record
wProcessorArchitecture:WORD;
|
|
wReserved:WORD;
|
|
dwPageSize:DWORD;
|
|
lpMinimumApplicationAddress:LPVOID;
|
|
lpMaximumApplicationAddress:LPVOID;
|
|
dwActiveProcessorMask:DWORD_PTR;
|
|
dwNumberOfProcessors:DWORD;
|
|
dwProcessorType:DWORD;
|
|
dwAllocationGranularity:DWORD;
|
|
wProcessorLevel:WORD;
|
|
wProcessorRevision:WORD;
|
Computer name
COMPUTER_NAME_FORMAT = _COMPUTER_NAME_FORMAT;
TComputerNameFormat = COMPUTER_NAME_FORMAT;
_COMPUTER_NAME_FORMAT = (
ComputerNameNetBIOS,
|
|
ComputerNameDnsHostname,
|
|
ComputerNameDnsDomain,
|
|
ComputerNameDnsFullyQualified,
|
|
ComputerNamePhysicalNetBIOS,
|
|
ComputerNamePhysicalDnsHostname,
|
|
ComputerNamePhysicalDnsDomain,
|
|
ComputerNamePhysicalDnsFullyQualified,
|
|
ComputerNameMax);
|
System time
LPSYSTEMTIME = SysUtils.LPSYSTEMTIME;
SYSTEMTIME = SysUtils.SYSTEMTIME;
TSystemTime = SysUtils.TSystemTime;
PSystemTime = SysUtils.PSystemTime;
_SYSTEMTIME = SysUtils.SYSTEMTIME;
wYear:Word;
|
|
wMonth:Word;
|
|
wDayOfWeek:Word;
|
|
wDay:Word;
|
|
wHour:Word;
|
|
wMinute:Word;
|
|
wSecond:Word;
|
|
wMilliseconds:Word;
|
Find data
WIN32_FIND_DATAW = _WIN32_FIND_DATAW;
LPWIN32_FIND_DATAW = ^WIN32_FIND_DATAW;
TWin32FindDataW = WIN32_FIND_DATAW;
PWin32FindDataW = PWIN32_FIND_DATAW;
PWIN32_FIND_DATAW = ^WIN32_FIND_DATAW;
_WIN32_FIND_DATAW = record
dwFileAttributes: DWORD;
|
|
ftCreationTime: FILETIME;
|
|
ftLastAccessTime: FILETIME;
|
|
ftLastWriteTime: FILETIME;
|
|
nFileSizeHigh: DWORD;
|
|
nFileSizeLow: DWORD;
|
|
dwReserved0: DWORD;
|
|
dwReserved1: DWORD;
|
|
cFileName: array [0..MAX_PATH - 1] of AnsiCHAR;
|
|
cAlternateFileName: array [0..13] of AnsiCHAR;
|
Stream info levels
_STREAM_INFO_LEVELS = (FindStreamInfoStandard, FindStreamInfoMaxInfoLevel);
|
|
STREAM_INFO_LEVELS = _STREAM_INFO_LEVELS;
|
|
TStreamInfoLevels = STREAM_INFO_LEVELS;
|
Find stream data
WIN32_FIND_STREAM_DATA = _WIN32_FIND_STREAM_DATA;
PWIN32_FIND_STREAM_DATA = ^WIN32_FIND_STREAM_DATA;
TWin32FindStreamData = WIN32_FIND_STREAM_DATA;
PWin32FindStreamData = PWIN32_FIND_STREAM_DATA;
_WIN32_FIND_STREAM_DATA = record
StreamSize: LARGE_INTEGER;
|
|
cStreamName: array [0..MAX_PATH + 35] of WCHAR;
|
Time zone information
PTIME_ZONE_INFORMATION = Timezone.PTIME_ZONE_INFORMATION;
|
|
_TIME_ZONE_INFORMATION = Timezone._TIME_ZONE_INFORMATION;
|
|
TIME_ZONE_INFORMATION = Timezone.TIME_ZONE_INFORMATION;
|
|
LPTIME_ZONE_INFORMATION = Timezone.LPTIME_ZONE_INFORMATION;
|
|
TTimeZoneInformation = Timezone.TTimeZoneInformation;
|
|
PTimeZoneInformation = Timezone.PTimeZoneInformation;
|
Memory status
MEMORYSTATUS = _MEMORYSTATUS;
TMemoryStatus = MEMORYSTATUS;
PMemoryStatus = LPMEMORYSTATUS;
LPMEMORYSTATUS = ^MEMORYSTATUS;
_MEMORYSTATUS = record
dwLength:DWORD;
|
|
dwMemoryLoad:DWORD;
|
|
dwTotalPhys:SIZE_T;
|
|
dwAvailPhys:SIZE_T;
|
|
dwTotalPageFile:SIZE_T;
|
|
dwAvailPageFile:SIZE_T;
|
|
dwTotalVirtual:SIZE_T;
|
|
dwAvailVirtual:SIZE_T;
|
Memory status extended
MEMORYSTATUSEX = _MEMORYSTATUSEX;
TMemoryStatusEx = MEMORYSTATUSEX;
PMemoryStatusEx = LPMEMORYSTATUSEX;
LPMEMORYSTATUSEX = ^MEMORYSTATUSEX;
_MEMORYSTATUSEX = record
dwLength:DWORD;
|
|
ullTotalPhys:DWORDLONG;
|
|
ullAvailPhys:DWORDLONG;
|
|
ullTotalPageFile:DWORDLONG;
|
|
ullAvailPageFile:DWORDLONG;
|
|
ullTotalVirtual:DWORDLONG;
|
|
ullAvailVirtual:DWORDLONG;
|
|
ullAvailExtendedVirtual:DWORDLONG;
|
Security attributes
SECURITY_ATTRIBUTES = _SECURITY_ATTRIBUTES;
LPSECURITY_ATTRIBUTES = ^SECURITY_ATTRIBUTES;
TSecurityAttributes = SECURITY_ATTRIBUTES;
PSecurityAttributes = PSECURITY_ATTRIBUTES;
PSECURITY_ATTRIBUTES = ^SECURITY_ATTRIBUTES;
_SECURITY_ATTRIBUTES = record
nLength:DWORD;
|
|
lpSecurityDescriptor:LPVOID;
|
|
bInheritHandle:BOOL;
|
Thread start routine
PTHREAD_START_ROUTINE = function (lpThreadParameter:LPVOID):DWORD;
|
|
LPTHREAD_START_ROUTINE = PTHREAD_START_ROUTINE;
|
|
TThreadStartRoutine = PTHREAD_START_ROUTINE;
|
Rectangle types
RECT = tagRECT;
NPRECT = ^tagRect;
LPCRECT = ^tagRect;
TRect = RECT;
PRect = LPRECT;
LPRECT = ^RECT;
tagRECT = record
left:LONG;
|
|
top:LONG;
|
|
right:LONG;
|
|
bottom:LONG;
|
Point types
NPPOINT = ^tagPoint;
POINT = tagPOINT;
TPoint = POINT;
PPoint = LPPOINT;
LPPOINT = ^POINT;
tagPOINT = record
Message types
MSG = tagMSG;
NPMSG = ^MSG;
TMsg = MSG;
PMsg = LPMSG;
LPMSG = ^MSG;
tagMSG = record
hThread:HANDLE;
|
|
message:UINT;
|
|
wParam:WPARAM;
|
|
lParam:LPARAM;
|
|
time:DWORD;
|
|
pt:POINT;
|
List entry
LIST_ENTRY = _LIST_ENTRY;
TListEntry = LIST_ENTRY;
PListEntry = PLIST_ENTRY;
PRLIST_ENTRY = ^LIST_ENTRY;
PLIST_ENTRY = ^LIST_ENTRY;
_LIST_ENTRY = record
Flink:PLIST_ENTRY;
|
|
Blink:PLIST_ENTRY;
|
RTL critical section debug
RTL_CRITICAL_SECTION_DEBUG = _RTL_CRITICAL_SECTION_DEBUG;
TRtlCriticalSectionDebug = RTL_CRITICAL_SECTION_DEBUG;
PRtlCriticalSectionDebug = PRTL_CRITICAL_SECTION_DEBUG;
PRTL_CRITICAL_SECTION_DEBUG = ^RTL_CRITICAL_SECTION_DEBUG;
_RTL_CRITICAL_SECTION_DEBUG = record
_Type:WORD;
|
|
CreatorBackTraceIndex:WORD;
|
|
CriticalSection:PRTL_CRITICAL_SECTION_DEBUG;
|
|
ProcessLocksList:LIST_ENTRY;
|
|
EntryCount:DWORD;
|
|
ContentionCount:DWORD;
|
|
Spare:array [0..1] of DWORD;
|
RTL critical section
RTL_CRITICAL_SECTION = _RTL_CRITICAL_SECTION;
TRtlCriticalSection = RTL_CRITICAL_SECTION;
PRtlCriticalSection = PRTL_CRITICAL_SECTION;
PRTL_CRITICAL_SECTION = ^RTL_CRITICAL_SECTION;
_RTL_CRITICAL_SECTION = record
DebugInfo:PRTL_CRITICAL_SECTION_DEBUG;
|
|
| Note: The following three fields control entering and exiting the critical section for the resource | |
LockCount:LONG;
|
|
RecursionCount:LONG;
|
|
OwningThread:HANDLE;
|
from the thread's ClientId->UniqueThread |
LockSemaphore:HANDLE;
|
|
SpinCount:ULONG_PTR;
|
force size on 64-bit systems when packed |
Critical section
CRITICAL_SECTION = RTL_CRITICAL_SECTION;
|
|
PCRITICAL_SECTION = PRTL_CRITICAL_SECTION;
|
|
LPCRITICAL_SECTION = PRTL_CRITICAL_SECTION;
|
|
TCriticalSection = CRITICAL_SECTION;
|
|
PCriticalSection = PCRITICAL_SECTION;
|
RTL condition variable
RTL_CONDITION_VARIABLE = _RTL_CONDITION_VARIABLE;
TRtlConditionVariable = RTL_CONDITION_VARIABLE;
PRtlConditionVariable = PRTL_CONDITION_VARIABLE;
CONDITION_VARIABLE = RTL_CONDITION_VARIABLE;
PCONDITION_VARIABLE = PRTL_CONDITION_VARIABLE;
PRTL_CONDITION_VARIABLE = ^RTL_CONDITION_VARIABLE;
_RTL_CONDITION_VARIABLE = record
IO counters
IO_COUNTERS = _IO_COUNTERS;
TIoCounters = IO_COUNTERS;
PIoCounters = PIO_COUNTERS;
PIO_COUNTERS = ^IO_COUNTERS;
_IO_COUNTERS = record
ReadOperationCount:Int64;
|
|
WriteOperationCount:Int64;
|
|
OtherOperationCount:Int64;
|
|
ReadTransferCount:Int64;
|
|
WriteTransferCount:Int64;
|
|
OtherTransferCount:Int64;
|
Code page information
LPCPINFO = Locale.LPCPINFO;
|
|
_cpinfo = Locale._cpinfo;
|
|
CPINFO = Locale.CPINFO;
|
|
TCpInfo = Locale.TCpInfo;
|
|
PCpInfo = Locale.PCpInfo;
|
Code page information extended
CPINFOEX = Locale.CPINFOEX;
|
|
LPCPINFOEX = Locale.LPCPINFOEX;
|
|
TCpInfoEx = Locale.TCpInfoEx;
|
|
PCpInfoEx = Locale.PCpInfoEx;
|
Memory basic information
MEMORY_BASIC_INFORMATION = _MEMORY_BASIC_INFORMATION;
TMemoryBasicInformation = MEMORY_BASIC_INFORMATION;
PMemoryBasicInformation = PMEMORY_BASIC_INFORMATION;
PMEMORY_BASIC_INFORMATION = ^MEMORY_BASIC_INFORMATION;
_MEMORY_BASIC_INFORMATION = record
BaseAddress: Pointer;
|
|
AllocationBase: Pointer;
|
|
AllocationProtect: DWORD;
|
|
RegionSize: SIZE_T;
|
|
State: DWORD;
|
|
Protect: DWORD;
|
|
Type_: DWORD;
|
FXPT16 color
FXPT16DOT16 = Longint;
|
|
LPFXPT16DOT16 = ^FXPT16DOT16;
|
FXPT2 color
FXPT2DOT30 = Longint;
|
|
LPFXPT2DOT30 = ^FXPT2DOT30;
|
CIEXYZ color
CIEXYZ = tagCIEXYZ;
LPCIEXYZ = ^CIEXYZ;
TCieXyz = CIEXYZ;
PCieXyz = ^TCieXyz;
tagCIEXYZ = record
ciexyzX: FXPT2DOT30;
|
|
ciexyzY: FXPT2DOT30;
|
|
ciexyzZ: FXPT2DOT30;
|
CIEXYZ triple color
CIEXYZTRIPLE = tagCIEXYZTRIPLE;
LPCIEXYZTRIPLE = ^CIEXYZTRIPLE;
TCieXyzTriple = CIEXYZTRIPLE;
PCieXyzTriple = ^TCieXyzTriple;
tagCIEXYZTRIPLE = record
ciexyzRed: CIEXYZ;
|
|
ciexyzGreen: CIEXYZ;
|
|
ciexyzBlue: CIEXYZ;
|
Bitmap types
BITMAP = tagBITMAP;
LPBITMAP = ^BITMAP;
NPBITMAP = ^BITMAP;
TBitmap = BITMAP;
PBitmap = ^TBitmap;
tagBITMAP = record
bmType: LONG;
|
|
bmWidth: LONG;
|
|
bmHeight: LONG;
|
|
bmWidthBytes: LONG;
|
|
bmPlanes: WORD;
|
|
bmBitsPixel: WORD;
|
|
bmBits: LPVOID;
|
RGB triple color
RGBTRIPLE = tagRGBTRIPLE;
TRgbTriple = RGBTRIPLE;
PRgbTriple = ^TRgbTriple;
tagRGBTRIPLE = packed record
rgbtBlue: BYTE;
|
|
rgbtGreen: BYTE;
|
|
rgbtRed: BYTE;
|
RGB quad color
RGBQUAD = tagRGBQUAD;
LPRGBQUAD = ^RGBQUAD;
TRgbQuad = RGBQUAD;
PRgbQuad = ^TRgbQuad;
tagRGBQUAD = record
rgbBlue: BYTE;
|
|
rgbGreen: BYTE;
|
|
rgbRed: BYTE;
|
|
rgbReserved: BYTE;
|
Bitmap core header
BITMAPCOREHEADER = tagBITMAPCOREHEADER;
LPBITMAPCOREHEADER = ^BITMAPCOREHEADER;
TBitmapCoreHeader = BITMAPCOREHEADER;
PBitmapCoreHeader = ^TBitmapCoreHeader;
tagBITMAPCOREHEADER = record
bcSize: DWORD;
|
|
bcWidth: WORD;
|
|
bcHeight: WORD;
|
|
bcPlanes: WORD;
|
|
bcBitCount: WORD;
|
Bitmap info header
BITMAPINFOHEADER = tagBITMAPINFOHEADER;
LPBITMAPINFOHEADER = ^BITMAPINFOHEADER;
TBitmapInfoHeader = BITMAPINFOHEADER;
PBitmapInfoHeader = ^TBitmapInfoHeader;
tagBITMAPINFOHEADER = record
biSize: DWORD;
|
|
biWidth: LONG;
|
|
biHeight: LONG;
|
|
biPlanes: WORD;
|
|
biBitCount: WORD;
|
|
biCompression: DWORD;
|
|
biSizeImage: DWORD;
|
|
biXPelsPerMeter: LONG;
|
|
biYPelsPerMeter: LONG;
|
|
biClrUsed: DWORD;
|
|
biClrImportant: DWORD;
|
Bitmap V4 header
LPBITMAPV4HEADER = ^BITMAPV4HEADER;
TBitmapV4Header = BITMAPV4HEADER;
PBitmapV4Header = ^TBitmapV4Header;
BITMAPV4HEADER = record
bV4Size: DWORD;
|
|
bV4Width: LONG;
|
|
bV4Height: LONG;
|
|
bV4Planes: WORD;
|
|
bV4BitCount: WORD;
|
|
bV4V4Compression: DWORD;
|
|
bV4SizeImage: DWORD;
|
|
bV4XPelsPerMeter: LONG;
|
|
bV4YPelsPerMeter: LONG;
|
|
bV4ClrUsed: DWORD;
|
|
bV4ClrImportant: DWORD;
|
|
bV4RedMask: DWORD;
|
|
bV4GreenMask: DWORD;
|
|
bV4BlueMask: DWORD;
|
|
bV4AlphaMask: DWORD;
|
|
bV4CSType: DWORD;
|
|
bV4Endpoints: CIEXYZTRIPLE;
|
|
bV4GammaRed: DWORD;
|
|
bV4GammaGreen: DWORD;
|
|
bV4GammaBlue: DWORD;
|
Bitmap V5 header
LPBITMAPV5HEADER = ^BITMAPV5HEADER;
TBitmapV5Header = BITMAPV5HEADER;
PBitmapV5Header = ^TBitmapV5Header;
BITMAPV5HEADER = record
bV5Size: DWORD;
|
|
bV5Width: LONG;
|
|
bV5Height: LONG;
|
|
bV5Planes: WORD;
|
|
bV5BitCount: WORD;
|
|
bV5Compression: DWORD;
|
|
bV5SizeImage: DWORD;
|
|
bV5XPelsPerMeter: LONG;
|
|
bV5YPelsPerMeter: LONG;
|
|
bV5ClrUsed: DWORD;
|
|
bV5ClrImportant: DWORD;
|
|
bV5RedMask: DWORD;
|
|
bV5GreenMask: DWORD;
|
|
bV5BlueMask: DWORD;
|
|
bV5AlphaMask: DWORD;
|
|
bV5CSType: DWORD;
|
|
bV5Endpoints: CIEXYZTRIPLE;
|
|
bV5GammaRed: DWORD;
|
|
bV5GammaGreen: DWORD;
|
|
bV5GammaBlue: DWORD;
|
|
bV5Intent: DWORD;
|
|
bV5ProfileData: DWORD;
|
|
bV5ProfileSize: DWORD;
|
|
bV5Reserved: DWORD;
|
Bitmap information
BITMAPINFO = tagBITMAPINFO;
LPBITMAPINFO = ^BITMAPINFO;
TBitmapInfo = BITMAPINFO;
PBitmapInfo = ^TBitmapInfo;
tagBITMAPINFO = record
bmiHeader: BITMAPINFOHEADER;
|
|
bmiColors: array [0..0] of RGBQUAD;
|
Bitmap core information
BITMAPCOREINFO = tagBITMAPCOREINFO;
LPBITMAPCOREINFO = ^BITMAPCOREINFO;
TBitmapCoreInfo = BITMAPCOREINFO;
PBitmapCoreInfo = ^TBitmapCoreInfo;
tagBITMAPCOREINFO = record
bmciHeader: BITMAPCOREHEADER;
|
|
bmciColors: array [0..0] of RGBTRIPLE;
|
Bitmap file header
BITMAPFILEHEADER = tagBITMAPFILEHEADER;
LPBITMAPFILEHEADER = ^BITMAPFILEHEADER;
TBitmapFileHeader = BITMAPFILEHEADER;
PBitmapFileHeader = ^TBitmapFileHeader;
tagBITMAPFILEHEADER = packed record
bfType: WORD;
|
|
bfSize: DWORD;
|
|
bfReserved1: WORD;
|
|
bfReserved2: WORD;
|
|
bfOffBits: DWORD;
|
Handle file information
BY_HANDLE_FILE_INFORMATION = _BY_HANDLE_FILE_INFORMATION;
LPBY_HANDLE_FILE_INFORMATION = ^BY_HANDLE_FILE_INFORMATION;
TByHandleFileInformation = BY_HANDLE_FILE_INFORMATION;
PByHandleFileInformation = PBY_HANDLE_FILE_INFORMATION;
PBY_HANDLE_FILE_INFORMATION = ^BY_HANDLE_FILE_INFORMATION;
_BY_HANDLE_FILE_INFORMATION = record
dwFileAttributes: DWORD;
|
|
ftCreationTime: FILETIME;
|
|
ftLastAccessTime: FILETIME;
|
|
ftLastWriteTime: FILETIME;
|
|
dwVolumeSerialNumber: DWORD;
|
|
nFileSizeHigh: DWORD;
|
|
nFileSizeLow: DWORD;
|
|
nNumberOfLinks: DWORD;
|
|
nFileIndexHigh: DWORD;
|
|
nFileIndexLow: DWORD;
|
Ultibo types
TDriveType = (dtUNKNOWN,dtINVALID,dtFIXED,dtFLOPPY,dtREMOVABLE,dtNETWORK,dtSUBSTITUTED,dtRAMDRIVE,dtCDROM);
|
|
TFileSysType = (fsUNKNOWN,fsINVALID,fsFAT12,fsFAT16,fsFAT32,fsEXFAT,fsHPFS,fsNTFS,fsNTFS5,fsNTFS51,fsCDFS,fsUDF,fsEXT2,fsEXT3,fsEXT4);
|
Drive types
TDriveData = record
Drive:Byte;
|
|
DriveType:TDriveType;
|
|
FileSysType:TFileSysType;
|
|
MaxFile:Integer;
|
|
MaxPath:Integer;
|
|
Attributes:LongWord;
|
|
SystemName:String[32];
|
|
VolumeName:String[32];
|
|
VolumeSerial:LongWord;
|
Drive functions (Compatibility)
TUltiboGetDriveTypeA = function(const ARootPath:String):LongWord;
|
|
TUltiboGetLogicalDrives = function:LongWord;
|
|
TUltiboGetLogicalDriveStringsA = function:String;
|
|
TUltiboDefineDosDeviceA = function(const ADeviceName,ATargetPath:String; AFlags:LongWord):Boolean;
|
|
TUltiboQueryDosDeviceA = function(const ARootPath:String):String;
|
|
TUltiboSetVolumeLabelA = function(const AVolume:String; const ALabel:String):Boolean;
|
|
TUltiboGetVolumeInformationA = function(const ARootPath:String; var AVolumeName:String; var VolumeSerialNumber,AMaximumComponentLength,AFileSystemFlags:LongWord; var SystemName:String):Boolean;
|
|
TUltiboGetDiskFreeSpaceA = function(const ARootPath:String; var ASectorsPerCluster,ABytesPerSector,ANumberOfFreeClusters,ATotalNumberOfClusters:LongWord):Boolean;
|
|
TUltiboGetDiskFreeSpaceExA = function(const APathName:String; var AFreeBytesAvailableToCaller,ATotalNumberOfBytes,ATotalNumberOfFreeBytes:QWord):Boolean;
|
Drive functions (Ultibo)
TUltiboGetDriveType = function(ADrive:Byte):TDriveType;
|
|
TUltiboGetDriveData = function(ADrive:Byte):TDriveData;
|
|
TUltiboGetDriveAttr = function(ADrive:Byte):LongWord;
|
|
TUltiboGetDriveLabel = function(ADrive:Byte):String;
|
|
TUltiboSetDriveLabel = function(ADrive:Byte; const ALabel:String):Boolean;
|
|
TUltiboGetDriveSerial = function(ADrive:Byte):LongWord;
|
|
TUltiboSetDriveSerial = function(ADrive:Byte; ASerial:LongWord):Boolean;
|
|
TUltiboIsDriveValid = function(ADrive:Byte):Boolean;
|
|
TUltiboGetValidDrives = function:LongWord;
|
|
TUltiboGetValidDriveNames = function:String;
|
|
TUltiboGetDriveFreeSpace = function(ADrive:Byte):LongWord;
|
|
TUltiboGetDriveFreeSpaceEx = function(ADrive:Byte):Int64;
|
|
TUltiboGetDriveTotalSpace = function(ADrive:Byte):LongWord;
|
|
TUltiboGetDriveTotalSpaceEx = function(ADrive:Byte):Int64;
|
|
TUltiboGetDriveInformation = function(const APath:String; var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean;
|
|
TUltiboGetCurrentDrive = function:Byte;
|
|
TUltiboSetCurrentDrive = function(const ADrive:String):Boolean;
|
|
File functions (Compatibility)
TUltiboAreFileApisANSI = function:Boolean;
|
|
TUltiboSetFileApisToOEM = function:Boolean;
|
|
TUltiboSetFileApisToANSI = function:Boolean;
|
|
TUltiboCreateFileA = function(const AFileName:AnsiString; AAccessMode,AShareMode,ACreateFlags,AFileAttributes:LongWord):THandle;
|
|
TUltiboCloseFile = function(AHandle:THandle):Boolean;
|
|
TUltiboSetFileAttributesA = function(const AFileName:String; AFileAttributes:LongWord):Boolean;
|
|
TUltiboGetFileAttributesA = function(const AFileName:String):LongWord;
|
|
TUltiboDeleteFileA = function(const AFileName:String):Boolean;
|
|
TUltiboMoveFileA = function(const AExistingName,ANewName:String):Boolean;
|
|
TUltiboFindFirstFileA = function(const AFileName:String; var AFindData:TWin32FindData):THandle;
|
|
TUltiboFindNextFileA = function(AHandle:THandle; var AFindData:TWin32FindData):Boolean;
|
|
TUltiboFindCloseFile = function(AHandle:THandle):Boolean;
|
|
TUltiboGetFileSize = function(AHandle:THandle; var AFileSizeHigh:LongWord):LongWord;
|
|
TUltiboGetFileSizeEx = function(AHandle:THandle):Int64;
|
|
TUltiboGetFileTime = function(AHandle:THandle; ACreateTime,AAccessTime,AWriteTime:PFileTime):Boolean;
|
|
TUltiboSetFileTime = function(AHandle:THandle; ACreateTime,AAccessTime,AWriteTime:PFileTime):Boolean;
|
|
TUltiboReadFile = function(AHandle:THandle; var ABuffer; ABytesToRead:LongWord; var ABytesRead:LongWord):Boolean;
|
|
TUltiboWriteFile = function(AHandle:THandle; const ABuffer; ABytesToWrite:LongWord; var ABytesWritten:LongWord):Boolean;
|
|
TUltiboSetEndOfFile = function(AHandle:THandle):Boolean;
|
|
TUltiboSetFilePointer = function(AHandle:THandle; ADistanceToMove:LongInt; var ADistanceToMoveHigh:LongInt; AMoveMethod:LongWord):LongWord;
|
|
TUltiboSetFilePointerEx = function(AHandle:THandle; const ADistanceToMove:Int64; var ANewFilePointer:Int64; AMoveMethod:LongWord):Boolean;
|
|
TUltiboFlushFileBuffers = function(AHandle:THandle):Boolean;
|
|
TUltiboCopyFileA = function(const AExistingName,ANewName:String; AFailIfExists:Boolean):Boolean;
|
|
TUltiboSetFileShortNameA = function(AHandle:THandle; const AShortName:String):Boolean;
|
|
TUltiboCreateHardLinkA = function(const ALinkName,AFileName:String):Boolean;
|
|
TUltiboCreateSymbolicLinkA = function(const ALinkName,ATargetName:String; ADirectory:Boolean):Boolean;
|
|
TUltiboGetFileInformationByHandle = function(AHandle:THandle; var AFileInformation:TByHandleFileInformation):Boolean;
|
|
TUltiboGetFinalPathNameByHandleA = function(AHandle:THandle; AFlags:LongWord):String;
|
Handle functions
TUltiboDuplicateHandle = function(AHandle:THandle):THandle;
|
Directory functions (Compatibility)
TUltiboCreateDirectoryA = function(const APathName:String):Boolean;
|
|
TUltiboRemoveDirectoryA = function(const APathName:String):Boolean;
|
|
TUltiboSetCurrentDirectoryA = function(const APathName:String):Boolean;
|
|
TUltiboGetCurrentDirectoryA = function:String;
|
|
TUltiboGetLongPathNameA = function(const AShortPath:String):String;
|
|
TUltiboGetShortPathNameA = function(const ALongPath:String):String;
|
|
TUltiboGetFullPathNameA = function(const AFileName:String):String;
|
Public variables
Compatibility variables
CONDITION_VARIABLE_INIT:CONDITION_VARIABLE = (Ptr:nil);
|
Drive functions (Compatibility)
UltiboGetDriveTypeAHandler:TUltiboGetDriveTypeA;
|
UltiboGetLogicalDrivesHandler:TUltiboGetLogicalDrives;
|
UltiboGetLogicalDriveStringsAHandler:TUltiboGetLogicalDriveStringsA;
|
UltiboDefineDosDeviceAHandler:TUltiboDefineDosDeviceA;
|
UltiboQueryDosDeviceAHandler:TUltiboQueryDosDeviceA;
|
UltiboSetVolumeLabelAHandler:TUltiboSetVolumeLabelA;
|
UltiboGetVolumeInformationAHandler:TUltiboGetVolumeInformationA;
|
UltiboGetDiskFreeSpaceAHandler:TUltiboGetDiskFreeSpaceA;
|
UltiboGetDiskFreeSpaceExAHandler:TUltiboGetDiskFreeSpaceExA;
|
Drive functions (Ultibo)
UltiboGetDriveTypeHandler:TUltiboGetDriveType;
|
UltiboGetDriveDataHandler:TUltiboGetDriveData;
|
UltiboGetDriveAttrHandler:TUltiboGetDriveAttr;
|
UltiboGetDriveLabelHandler:TUltiboGetDriveLabel;
|
UltiboSetDriveLabelHandler:TUltiboSetDriveLabel;
|
UltiboGetDriveSerialHandler:TUltiboGetDriveSerial;
|
UltiboSetDriveSerialHandler:TUltiboSetDriveSerial;
|
UltiboIsDriveValidHandler:TUltiboIsDriveValid;
|
UltiboGetValidDrivesHandler:TUltiboGetValidDrives;
|
UltiboGetValidDriveNamesHandler:TUltiboGetValidDriveNames;
|
UltiboGetDriveFreeSpaceHandler:TUltiboGetDriveFreeSpace;
|
UltiboGetDriveFreeSpaceExHandler:TUltiboGetDriveFreeSpaceEx;
|
UltiboGetDriveTotalSpaceHandler:TUltiboGetDriveTotalSpace;
|
UltiboGetDriveTotalSpaceExHandler:TUltiboGetDriveTotalSpaceEx;
|
UltiboGetDriveInformationHandler:TUltiboGetDriveInformation;
|
UltiboGetCurrentDriveHandler:TUltiboGetCurrentDrive;
|
UltiboSetCurrentDriveHandler:TUltiboSetCurrentDrive;
|
File functions (Compatibility)
UltiboAreFileApisANSIHandler:TUltiboAreFileApisANSI;
|
UltiboSetFileApisToOEMHandler:TUltiboSetFileApisToOEM;
|
UltiboSetFileApisToANSIHandler:TUltiboSetFileApisToANSI;
|
UltiboCreateFileAHandler:TUltiboCreateFileA;
|
UltiboCloseFileHandler:TUltiboCloseFile;
|
UltiboSetFileAttributesAHandler:TUltiboSetFileAttributesA;
|
UltiboGetFileAttributesAHandler:TUltiboGetFileAttributesA;
|
UltiboDeleteFileAHandler:TUltiboDeleteFileA;
|
UltiboMoveFileAHandler:TUltiboMoveFileA;
|
UltiboFindFirstFileAHandler:TUltiboFindFirstFileA;
|
UltiboFindNextFileAHandler:TUltiboFindNextFileA;
|
UltiboFindCloseFileHandler:TUltiboFindCloseFile;
|
UltiboGetFileSizeHandler:TUltiboGetFileSize;
|
UltiboGetFileSizeExHandler:TUltiboGetFileSizeEx;
|
UltiboGetFileTimeHandler:TUltiboGetFileTime;
|
UltiboSetFileTimeHandler:TUltiboSetFileTime;
|
UltiboReadFileHandler:TUltiboReadFile;
|
UltiboWriteFileHandler:TUltiboWriteFile;
|
UltiboSetFilePointerHandler:TUltiboSetFilePointer;
|
UltiboSetEndOfFileHandler:TUltiboSetEndOfFile;
|
UltiboSetFilePointerExHandler:TUltiboSetFilePointerEx;
|
UltiboFlushFileBuffersHandler:TUltiboFlushFileBuffers;
|
UltiboCopyFileAHandler:TUltiboCopyFileA;
|
UltiboSetFileShortNameAHandler:TUltiboSetFileShortNameA;
|
UltiboCreateHardLinkAHandler:TUltiboCreateHardLinkA;
|
UltiboCreateSymbolicLinkAHandler:TUltiboCreateSymbolicLinkA;
|
UltiboGetFileInformationByHandleHandler:TUltiboGetFileInformationByHandle;
|
Directory functions (Compatibility)
UltiboCreateDirectoryAHandler:TUltiboCreateDirectoryA;
|
UltiboRemoveDirectoryAHandler:TUltiboRemoveDirectoryA;
|
UltiboSetCurrentDirectoryAHandler:TUltiboSetCurrentDirectoryA;
|
UltiboGetCurrentDirectoryAHandler:TUltiboGetCurrentDirectoryA;
|
UltiboGetLongPathNameAHandler:TUltiboGetLongPathNameA;
|
UltiboGetShortPathNameAHandler:TUltiboGetShortPathNameA;
|
UltiboGetFullPathNameAHandler:TUltiboGetFullPathNameA;
|
Function declarations
Initialization functions
procedure UltiboInit;
Description: To be documented
General functions (Compatibility)
function GetVersion:DWORD;
Description: To be documented
function GetVersionEx(lpVersionInformation:LPOSVERSIONINFOA):BOOL; inline;
Description: To be documented
function GetVersionExA(lpVersionInformation:LPOSVERSIONINFOA):BOOL;
Description: To be documented
function GetVersionExW(lpVersionInformation:LPOSVERSIONINFOW):BOOL;
Description: To be documented
procedure GetSystemInfo(var lpSystemInfo:SYSTEM_INFO);
Description: To be documented
procedure GetNativeSystemInfo(lpSystemInfo:LPSYSTEM_INFO);
Description: To be documented
function GetLargePageMinimum:SIZE_T;
Description: To be documented
function GetComputerName(lpBuffer:LPSTR; var nSize:DWORD):BOOL; inline;
Description: To be documented
function GetComputerNameA(lpBuffer:LPSTR; var nSize:DWORD):BOOL;
Description: To be documented
function GetComputerNameW(lpBuffer:LPWSTR; var nSize:DWORD):BOOL;
Description: To be documented
function SetComputerName(const lpComputerName:LPCSTR):BOOL; inline;
Description: To be documented
function SetComputerNameA(const lpComputerName:LPCSTR):BOOL;
Description: To be documented
function SetComputerNameW(const lpComputerName:LPCWSTR):BOOL;
Description: To be documented
function GetComputerNameEx(NameType:COMPUTER_NAME_FORMAT; lpBuffer:LPSTR; var nSize:DWORD):BOOL; inline;
Description: To be documented
function GetComputerNameExA(NameType:COMPUTER_NAME_FORMAT; lpBuffer:LPSTR; var nSize:DWORD):BOOL;
Description: To be documented
function GetComputerNameExW(NameType:COMPUTER_NAME_FORMAT; lpBuffer:LPWSTR; var nSize:DWORD):BOOL;
Description: To be documented
function SetComputerNameEx(NameType:COMPUTER_NAME_FORMAT; const lpBuffer:LPCSTR):BOOL; inline;
Description: To be documented
function SetComputerNameExA(NameType:COMPUTER_NAME_FORMAT; const lpBuffer:LPCSTR):BOOL;
Description: To be documented
function SetComputerNameExW(NameType:COMPUTER_NAME_FORMAT; const lpBuffer:LPCWSTR):BOOL;
Description: To be documented
function ExitUltibo(dwReserved:DWORD; uReserved:UINT):BOOL;
Description: To be documented
function ExitUltiboEx(uFlags:UINT; dwReserved:DWORD):BOOL;
Description: To be documented
General functions (Ultibo)
function RestartComputer(Delay:LongWord):Boolean;
Description: To be documented
| Delay | Milliseconds to delay before restart |
|---|
function ShutdownComputer(Delay:LongWord):Boolean;
Description: To be documented
| Delay | Milliseconds to delay before restart |
|---|
function Uptime:TFileTime;
Description: Get the current system up time as a FileTime value
Time functions (Compatibility)
function GetTickCount:DWORD;
Description: To be documented
function GetTickCount64:ULONGLONG;
Description: To be documented
procedure GetSystemTime(var lpSystemTime:SYSTEMTIME);
Description: Get the current system time in UTC
procedure GetSystemTimeAsFileTime(var lpSystemTimeAsFileTime:FILETIME);
Description: Get the current system time in UTC as a FileTime value
function SetSystemTime(var lpSystemTime:SYSTEMTIME):BOOL;
Description: Set the current system time in UTC
procedure GetLocalTime(var lpSystemTime:SYSTEMTIME);
Description: Get the current local time
function SetLocalTime(var lpSystemTime:SYSTEMTIME):BOOL;
Description: Set the current local time
function SystemTimeToTzSpecificLocalTime(lpTimeZoneInformation:LPTIME_ZONE_INFORMATION; var lpUniversalTime,lpLocalTime:SYSTEMTIME):BOOL;
Description: To be documented
function TzSpecificLocalTimeToSystemTime(const lpTimeZoneInformation:TIME_ZONE_INFORMATION; const lpLocalTime:SYSTEMTIME; var lpUniversalTime:SYSTEMTIME):BOOL;
Description: To be documented
function GetTimeZoneInformation(var lpTimeZoneInformation:TIME_ZONE_INFORMATION):DWORD;
Description: To be documented
function SetTimeZoneInformation(const lpTimeZoneInformation:TIME_ZONE_INFORMATION):BOOL;
Description: To be documented
function SystemTimeToFileTime(const lpSystemTime:SYSTEMTIME; var lpFileTime:FILETIME):BOOL;
Description: Convert a SystemTime value to a FileTime value
| Note | lpSystemTime is assumed to be UTC/lpFileTime is returned as UTC |
|---|
function FileTimeToSystemTime(const lpFileTime:FILETIME; var lpSystemTime:SYSTEMTIME):BOOL;
Description: Convert a FileTime value to a SystemTime value
| Note | lpFileTime is assumed to be UTC/lpSystemTime is returned as UTC. If lpFileTime is less than 30/12/1899 then SystemTime will be zero. |
|---|
function FileTimeToLocalFileTime(const lpFileTime:FILETIME; var lpLocalFileTime:FILETIME):BOOL;
Description: Convert a FileTime in UTC to a FileTime in Local time
| Note | TIMEZONE_TIME_OFFSET is the number of minutes offset from UTC |
|---|
function LocalFileTimeToFileTime(const lpLocalFileTime:FILETIME; var lpFileTime:FILETIME):BOOL;
Description: Convert a FileTime in Local time to a FileTime in UTC
| Note | TIMEZONE_TIME_OFFSET is the number of minutes offset from UTC |
|---|
function CompareFileTime(const lpFileTime1,lpFileTime2:FILETIME):LONG;
Description: To be documented
function FileTimeToDosDateTime(const lpFileTime:FILETIME; var lpFatDate,lpFatTime:WORD):BOOL;
Description: Convert a FileTime value to a DOS date and time value
| Note | FileTime is assumed to be Local / DOS date and time is returned as Local. If FileTime is less than 1/1/1980 then DOS date and time will be 1/1/1980. |
|---|
function DosDateTimeToFileTime(wFatDate,wFatTime:WORD; var lpFileTime:FILETIME):BOOL;
Description: Convert a DOS date and time value to a FileTime value
| Note | DOS date and time is assumed to be Local/FileTime is returned as Local. If DOS date and time is less than 1/1/1980 then FileTime will be 1/1/1980. |
|---|
function QueryPerformanceCounter(var lpPerformanceCount: LARGE_INTEGER): BOOL;
Description: Retrieves the current value of the performance counter, which is a high resolution (<1us) time stamp that can be used for time-interval measurements
function QueryPerformanceFrequency(var lpFrequency: LARGE_INTEGER): BOOL;
Description: Retrieves the frequency of the performance counter
| Note | The frequency of the performance counter is fixed at system boot and is consistent across all processors. Therefore, the frequency need only be queried upon application initialization, and the result can be cached. |
|---|
Time functions (Ultibo)
function GetCurrentTime:TFileTime;
Description: Get the current system time in UTC as a FileTime value
procedure SetCurrentTime(const ATime:TFileTime);
Description: Set the current system time in UTC from a FileTime value
function GetTimeAdjust:LongInt;
Description: Gets the time adjustment used internally
procedure SetTimeAdjust(AAdjust:LongInt);
Description: Sets the time adjustment used internally
function GetCurrentTimezone:String;
Description: Get the name of the current Timezone
function SetCurrentTimezone(const AName:String):Boolean;
Description: Set the current Timezone by name
function GetTimezoneActiveOffset:LongInt;
Description: Gets the Active Offset from the current Timezone
function GetTimezoneStandardOffset:LongInt;
Description: Gets the Standard Offset from the current Timezone
procedure SetTimezoneStandardOffset(AOffset:LongInt);
Description: Sets the Standard Offset for the current Timezone
function GetTimezoneDaylightOffset:LongInt;
Description: Gets the Daylight Offset from the current Timezone
procedure SetTimezoneDaylightOffset(AOffset:LongInt);
Description: Sets the Daylight Offset for the current Timezone
function GetTimezoneStandardStart:String;
Description: Get the description of the standard time start for the current Timezone
function GetTimezoneDaylightStart:String;
Description: Get the description of the daylight time start for the current Timezone
function GetTimezoneStandardDate:TDateTime;
Description: Get the next date of the standard time start for the current Timezone
function GetTimezoneDaylightDate:TDateTime;
Description: Get the next date of the daylight time start for the current Timezone
function FileTimeToDateTime(const AFileTime:TFileTime):TDateTime;
Description: Convert a FileTime value to a DateTime value
| Note | FileTime is assumed to be UTC/DateTime is returned as Local. If FileTime is less than 30/12/1899 then Result will be zero. |
|---|
function DateTimeToFileTime(ADateTime:TDateTime):TFileTime;
Description: Convert a DateTime value to a FileTime value
| Note | DateTime is assumed to be Local/FileTime is returned as UTC |
|---|
function LocalFileTimeToDateTime(const AFileTime:TFileTime):TDateTime;
Description: Convert a FileTime value to a DateTime value
| Note | FileTime is assumed to be Local/DateTime is returned as Local. If FileTime is less than 30/12/1899 then Result will be zero. |
|---|
function DateTimeToLocalFileTime(ADateTime:TDateTime):TFileTime;
Description: Convert a DateTime value to a FileTime value
| Note | DateTime is assumed to be Local/FileTime is returned as Local |
|---|
function SystemFileTimeToDateTime(const AFileTime:TFileTime):TDateTime;
Description: Convert a FileTime value to a DateTime value
| Note | FileTime is assumed to be UTC/DateTime is returned as UTC. If FileTime is less than 30/12/1899 then Result will be zero. Same as LocalFileTimeToDateTime but renamed for clarity. |
|---|
function DateTimeToSystemFileTime(ADateTime:TDateTime):TFileTime;
Description: Convert a DateTime value to a FileTime value
| Note | DateTime is assumed to be UTC/FileTime is returned as UTC. Same as DateTimeToLocalFileTime but renamed for clarity. |
|---|
function FileTimeToUnixTime(const AFileTime:TFileTime):TUnixTime;
Description: Convert a FileTime value to a Unix/Linux time value
| Note | FileTime is assumed to be Local/UnixTime is returned as Local. If FileTime is less than 1/1/1970 then Result will be zero. |
|---|
function UnixTimeToFileTime(AUnixTime:TUnixTime):TFileTime;
Description: Convert a Unix/Linux time value to a FileTime value
| Note | UnixTime is assumed to be Local/FileTime is returned as Local |
|---|
function UnixTimeToDateTime(AUnixTime:TUnixTime):TDateTime;
Description: Convert a Unix/Linux time value to a DateTime value
| Note | UnixTime is assumed to be Local/DateTime is returned as Local |
|---|
function DateTimeToUnixTime(ADateTime:TDateTime):TUnixTime;
Description: Convert a DateTime value to a Unix/Linux time value
| Note | DateTime is assumed to be Local/UnixTime is returned as Local. If DateTime is less than 1/1/1970 then Result will be zero. |
|---|
function FileTimeToFileDate(const AFileTime:TFileTime):Integer;
Description: Convert a FileTime value to a DOS date value
| Note | FileTime is assumed to be UTC/FileDate is returned as Local. If FileTime is less than 1/1/1980 then Result will be zero. |
|---|
function FileDateToFileTime(AFileDate:Integer):TFileTime;
Description: Convert a DOS date value to a FileTime value
| Note | FileDate is assumed to be Local/FileTime is returned as UTC. If FileDate is less than 1/1/1980 then Result will be zero. |
|---|
function FileTimeToAdjustedTime(const AFileTime:TFileTime):TFileTime;
Description: Convert a local FileTime value to a DST adjusted FileTime value
| Note | TIMEZONE_TIME_ADJUST is the number of minutes difference from TIMEZONE_TIME_OFFSET |
|---|
function AdjustedTimeToFileTime(const AFileTime:TFileTime):TFileTime;
Description: Convert a DST adjusted FileTime value to a local FileTime value
| Note | TIMEZONE_TIME_ADJUST is the number of minutes difference from TIMEZONE_TIME_OFFSET |
|---|
function RoundFileTime(const AFileTime:TFileTime):TFileTime;
Description: Round FileTime to nearest 2 seconds for compatibility with FileDate
function ConvertFileTime(const AFileTime:TFileTime; AOffset:Integer; ALocal:Boolean):TFileTime;
Description: Convert a FileTime value to a specified offset (Local or UTC)
| Note | Offset is the number of minutes to adjust in conversion. Local indicates whether the source time is Local or UTC. |
|---|
function ConvertDateTime(ADateTime:TDateTime; AOffset:Integer; ALocal:Boolean):TDateTime;
Description: Convert a DateTime value to a specified offset (Local or UTC)
| Note | Offset is the number of minutes to adjust in conversion. Local indicates whether the source time is Local or UTC. |
|---|
Drive functions (Compatibility)
function GetDiskType(const lpRootPathName:LPCSTR):UINT; inline;
Description: To be documented
function GetDriveTypeA(const lpRootPathName:LPCSTR):UINT;
Description: To be documented
function GetDriveTypeW(const lpRootPathName:LPCWSTR):UINT;
Description: To be documented
function GetLogicalDrives:DWORD;
Description: To be documented
function GetLogicalDriveStrings(nBufferLength:DWORD; lpBuffer:LPSTR):DWORD; inline;
Description: To be documented
function GetLogicalDriveStringsA(nBufferLength:DWORD; lpBuffer:LPSTR):DWORD;
Description: To be documented
function GetLogicalDriveStringsW(nBufferLength:DWORD; lpBuffer:LPWSTR):DWORD;
Description: To be documented
function DefineDosDevice(dwFlags:DWORD; const lpDeviceName,lpTargetPath:LPCSTR):BOOL; inline;
Description: To be documented
function DefineDosDeviceA(dwFlags:DWORD; const lpDeviceName,lpTargetPath:LPCSTR):BOOL;
Description: To be documented
function DefineDosDeviceW(dwFlags:DWORD; const lpDeviceName,lpTargetPath:LPCWSTR):BOOL;
Description: To be documented
function QueryDosDevice(const lpDeviceName:LPCSTR; lpTargetPath:LPSTR; ucchMax:DWORD):DWORD; inline;
Description: To be documented
function QueryDosDeviceA(const lpDeviceName:LPSTR; lpTargetPath:LPSTR; ucchMax:DWORD):DWORD;
Description: To be documented
function QueryDosDeviceW(const lpDeviceName:LPWSTR; lpTargetPath:LPWSTR; ucchMax:DWORD):DWORD;
Description: To be documented
function SetVolumeLabel(const lpRootPathName,lpVolumeName:LPCSTR):BOOL; inline;
Description: To be documented
function SetVolumeLabelA(const lpRootPathName,lpVolumeName:LPCSTR):BOOL;
Description: To be documented
function SetVolumeLabelW(const lpRootPathName,lpVolumeName:LPCWSTR):BOOL;
Description: To be documented
function GetVolumeInformation(const lpRootPathName:LPCSTR; lpVolumeNameBuffer:LPSTR; nVolumeNameSize:DWORD; lpVolumeSerialNumber:LPDWORD; var lpMaximumComponentLength,lpFileSystemFlags:DWORD; lpFileSystemNameBuffer:LPSTR; nFileSystemNameSize:DWORD):BOOL; inline;
Description: To be documented
function GetVolumeInformationA(const lpRootPathName:LPCSTR; lpVolumeNameBuffer:LPSTR; nVolumeNameSize:DWORD; lpVolumeSerialNumber:LPDWORD; var lpMaximumComponentLength,lpFileSystemFlags:DWORD; lpFileSystemNameBuffer:LPSTR; nFileSystemNameSize:DWORD):BOOL;
Description: To be documented
function GetVolumeInformationW(const lpRootPathName:LPCWSTR; lpVolumeNameBuffer:LPWSTR; nVolumeNameSize:DWORD; lpVolumeSerialNumber:LPDWORD; var lpMaximumComponentLength,lpFileSystemFlags:DWORD; lpFileSystemNameBuffer:LPWSTR; nFileSystemNameSize:DWORD):BOOL;
Description: To be documented
function GetDiskFreeSpace(const lpRootPathName:LPCSTR; var lpSectorsPerCluster,lpBytesPerSector,lpNumberOfFreeClusters,lpTotalNumberOfClusters:DWORD):BOOL; inline;
Description: To be documented
function GetDiskFreeSpaceA(const lpRootPathName:LPCSTR; var lpSectorsPerCluster,lpBytesPerSector,lpNumberOfFreeClusters,lpTotalNumberOfClusters:DWORD):BOOL;
Description: To be documented
function GetDiskFreeSpaceW(const lpRootPathName:LPCWSTR; var lpSectorsPerCluster,lpBytesPerSector,lpNumberOfFreeClusters,lpTotalNumberOfClusters:DWORD):BOOL;
Description: To be documented
function GetDiskFreeSpaceEx(const lpDirectoryName:LPCSTR; var lpFreeBytesAvailableToCaller,lpTotalNumberOfBytes:ULARGE_INTEGER; lpTotalNumberOfFreeBytes:PULARGE_INTEGER):BOOL; inline;
Description: To be documented
function GetDiskFreeSpaceExA(const lpDirectoryName:LPCSTR; var lpFreeBytesAvailableToCaller,lpTotalNumberOfBytes:ULARGE_INTEGER; lpTotalNumberOfFreeBytes:PULARGE_INTEGER):BOOL;
Description: To be documented
function GetDiskFreeSpaceExW(const lpDirectoryName:LPCWSTR; var lpFreeBytesAvailableToCaller,lpTotalNumberOfBytes:ULARGE_INTEGER; lpTotalNumberOfFreeBytes:PULARGE_INTEGER):BOOL;
Description: To be documented
Drive functions (Ultibo)
function GetPathDrive(const APath:String):Byte;
Description: To be documented
function GetDriveType(ADrive:Byte):TDriveType;
Description: To be documented
function GetDriveData(ADrive:Byte):TDriveData;
Description: To be documented
function GetDriveAttr(ADrive:Byte):LongWord;
Description: To be documented
function GetDriveLabel(ADrive:Byte):String;
Description: To be documented
function SetDriveLabel(ADrive:Byte; const ALabel:String):Boolean;
Description: To be documented
function GetDriveSerial(ADrive:Byte):LongWord;
Description: To be documented
function SetDriveSerial(ADrive:Byte; ASerial:LongWord):Boolean;
Description: To be documented
function IsDriveValid(ADrive:Byte):Boolean;
Description: To be documented
function GetValidDrives:LongWord;
Description: To be documented
function GetValidDriveNames:String;
Description: To be documented
function GetDriveFreeSpace(ADrive:Byte):LongWord;
Description: To be documented
function GetDriveFreeSpaceEx(ADrive:Byte):Int64;
Description: To be documented
function GetDriveTotalSpace(ADrive:Byte):LongWord;
Description: To be documented
function GetDriveTotalSpaceEx(ADrive:Byte):Int64;
Description: To be documented
function GetDriveInformation(const APath:String; var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean;
Description: To be documented
function GetCurrentDrive:Byte;
Description: To be documented
function SetCurrentDrive(const ADrive:String):Boolean;
Description: To be documented
File functions (Compatibility)
function AreFileApisANSI:BOOL;
Description: To be documented
procedure SetFileApisToOEM;
Description: To be documented
procedure SetFileApisToANSI;
Description: To be documented
function CreateFile(const lpFileName:LPCSTR; dwDesiredAccess,dwShareMode:DWORD; lpSecurityAttributes:LPSECURITY_ATTRIBUTES; dwCreationDisposition:DWORD; dwFlagsAndAttributes:DWORD; hTemplateFile:HANDLE):HANDLE; inline;
Description: To be documented
function CreateFileA(const lpFileName:LPCSTR; dwDesiredAccess,dwShareMode:DWORD; lpSecurityAttributes:LPSECURITY_ATTRIBUTES; dwCreationDisposition:DWORD; dwFlagsAndAttributes:DWORD; hTemplateFile:HANDLE):HANDLE;
Description: To be documented
| Note | lpSecurityAttributes and hTemplateFile are currently ignored by Ultibo |
|---|
function CreateFileW(const lpFileName:LPCWSTR; dwDesiredAccess,dwShareMode:DWORD; lpSecurityAttributes:LPSECURITY_ATTRIBUTES; dwCreationDisposition:DWORD; dwFlagsAndAttributes:DWORD; hTemplateFile:HANDLE):HANDLE;
Description: To be documented
| Note | lpSecurityAttributes and hTemplateFile are currently ignored by Ultibo |
|---|
function SetFileAttributes(const lpFileName:LPCSTR; dwFileAttributes:DWORD):BOOL; inline;
Description: To be documented
function SetFileAttributesA(const lpFileName:LPCSTR; dwFileAttributes:DWORD):BOOL;
Description: To be documented
function SetFileAttributesW(const lpFileName:LPCWSTR; dwFileAttributes:DWORD):BOOL;
Description: To be documented
function GetFileAttributes(const lpFileName:LPCSTR):DWORD; inline;
Description: To be documented
function GetFileAttributesA(const lpFileName:LPCSTR):DWORD;
Description: To be documented
function GetFileAttributesW(const lpFileName:LPCWSTR):DWORD;
Description: To be documented
function DeleteFile(const lpFileName:LPCSTR):BOOL; inline;
Description: To be documented
function DeleteFileA(const lpFileName:LPCSTR):BOOL;
Description: To be documented
function DeleteFileW(const lpFileName:LPCWSTR):BOOL;
Description: To be documented
function MoveFile(const lpExistingFileName,lpNewFileName:LPCSTR):BOOL; inline;
Description: To be documented
function MoveFileA(const lpExistingFileName,lpNewFileName:LPCSTR):BOOL;
Description: To be documented
function MoveFileW(const lpExistingFileName,lpNewFileName:LPCWSTR):BOOL;
Description: To be documented
function FindFirstFile(const lpFileName:LPCSTR; var lpFindFileData:WIN32_FIND_DATAA):HANDLE; inline;
Description: To be documented
function FindFirstFileA(const lpFileName:LPCSTR; var lpFindFileData:WIN32_FIND_DATAA):HANDLE;
Description: To be documented
function FindFirstFileW(const lpFileName:LPCWSTR; var lpFindFileData:WIN32_FIND_DATAW):HANDLE;
Description: To be documented
function FindNextFile(hFindFile:HANDLE; var lpFindFileData:WIN32_FIND_DATAA):BOOL; inline;
Description: To be documented
function FindNextFileA(hFindFile:HANDLE; var lpFindFileData:WIN32_FIND_DATAA):BOOL;
Description: To be documented
function FindNextFileW(hFindFile:HANDLE; var lpFindFileData:WIN32_FIND_DATAW):BOOL;
Description: To be documented
function FindCloseFile(hFindFile:HANDLE):BOOL;
Description: To be documented
function GetFileSize(hFile:HANDLE;lpFileSizeHigh:LPDWORD):DWORD;
Description: To be documented
function GetFileSizeEx(hFile:HANDLE; var lpFileSize:LARGE_INTEGER):BOOL;
Description: To be documented
function GetFileTime(hFile:HANDLE; lpCreationTime,lpLastAccessTime,lpLastWriteTime:PFILETIME):BOOL;
Description: To be documented
function SetFileTime(hFile:HANDLE; lpCreationTime,lpLastAccessTime,lpLastWriteTime:PFILETIME):BOOL;
Description: To be documented
function ReadFile(hFile:HANDLE; lpBuffer:LPVOID; nNumberOfBytesToRead:DWORD; lpNumberOfBytesRead:LPDWORD; lpOverlapped:LPOVERLAPPED):BOOL;
Description: To be documented
function WriteFile(hFile:HANDLE; lpBuffer:LPCVOID; nNumberOfBytesToWrite:DWORD; lpNumberOfBytesWritten:LPDWORD; lpOverlapped:LPOVERLAPPED):BOOL;
Description: To be documented
function SetEndOfFile(hFile:HANDLE):BOOL;
Description: To be documented
function SetFilePointer(hFile:HANDLE; lDistanceToMove:LONG; lpDistanceToMoveHigh:PLONG; dwMoveMethod:DWORD):DWORD;
Description: To be documented
function SetFilePointerEx(hFile:HANDLE; liDistanceToMove:LARGE_INTEGER; lpNewFilePointer:PLARGE_INTEGER; dwMoveMethod:DWORD):BOOL;
Description: To be documented
function FlushFileBuffers(hFile:HANDLE):BOOL;
Description: To be documented
function CopyFile(const lpExistingFileName,lpNewFileName:LPCSTR; bFailIfExists:BOOL):BOOL; inline;
Description: To be documented
function CopyFileA(const lpExistingFileName,lpNewFileName:LPCSTR; bFailIfExists:BOOL):BOOL;
Description: To be documented
function CopyFileW(const lpExistingFileName,lpNewFileName:LPCWSTR; bFailIfExists:BOOL):BOOL;
Description: To be documented
function SetFileShortName(hFile:HANDLE; const lpShortName:LPCSTR):BOOL; inline;
Description: To be documented
function SetFileShortNameA(hFile:HANDLE; const lpShortName:LPCSTR):BOOL;
Description: To be documented
function SetFileShortNameW(hFile:HANDLE; const lpShortName:LPCWSTR):BOOL;
Description: To be documented
function CreateHardLink(const lpFileName,lpExistingFileName:LPCSTR; lpSecurityAttributes:LPSECURITY_ATTRIBUTES):BOOL; inline;
Description: To be documented
function CreateHardLinkA(const lpFileName,lpExistingFileName:LPCSTR; lpSecurityAttributes:LPSECURITY_ATTRIBUTES):BOOL;
Description: To be documented
| Note | lpSecurityAttributes is currently ignored by Ultibo |
|---|
function CreateHardLinkW(const lpFileName,lpExistingFileName:LPCWSTR; lpSecurityAttributes:LPSECURITY_ATTRIBUTES):BOOL;
Description: To be documented
| Note | lpSecurityAttributes is currently ignored by Ultibo |
|---|
function CreateSymbolicLink(const lpSymlinkFileName,lpTargetFileName:LPCSTR; dwFlags:DWORD):BOOL; inline;
Description: To be documented
function CreateSymbolicLinkA(const lpSymlinkFileName,lpTargetFileName:LPCSTR; dwFlags:DWORD):BOOL;
Description: To be documented
function CreateSymbolicLinkW(const lpSymlinkFileName,lpTargetFileName:LPCWSTR; dwFlags:DWORD):BOOL;
Description: To be documented
function GetFileInformationByHandle(hFile:HANDLE; var lpFileInformation:BY_HANDLE_FILE_INFORMATION):BOOL;
Description: To be documented
function GetFinalPathNameByHandle(hFile:HANDLE; lpszFilePath:LPSTR; cchFilePath,dwFlags:DWORD):DWORD;
Description: Retrieves the final path for the specified open file handle
function GetFinalPathNameByHandleA(hFile:HANDLE; lpszFilePath:LPSTR; cchFilePath,dwFlags:DWORD):DWORD;
Description: Retrieves the final path for the specified open file handle
function GetFinalPathNameByHandleW(hFile:HANDLE; lpszFilePath:LPWSTR; cchFilePath,dwFlags:DWORD):DWORD;
Description: Retrieves the final path for the specified open file handle
Directory functions (Compatibility)
function CreateDirectory(const lpPathName:LPCSTR; lpSecurityAttributes:LPSECURITY_ATTRIBUTES):BOOL; inline;
Description: To be documented
function CreateDirectoryA(const lpPathName:LPCSTR; lpSecurityAttributes:LPSECURITY_ATTRIBUTES):BOOL;
Description: To be documented
| Note | lpSecurityAttributes is currently ignored by Ultibo |
|---|
function CreateDirectoryW(const lpPathName:LPCWSTR; lpSecurityAttributes:LPSECURITY_ATTRIBUTES):BOOL;
Description: To be documented
| Note | lpSecurityAttributes is currently ignored by Ultibo |
|---|
function RemoveDirectory(const lpPathName:LPCSTR):BOOL; inline;
Description: To be documented
function RemoveDirectoryA(const lpPathName:LPCSTR):BOOL;
Description: To be documented
function RemoveDirectoryW(const lpPathName:LPCWSTR):BOOL;
Description: To be documented
function SetCurrentDirectory(const lpPathName:LPCSTR):BOOL; inline;
Description: To be documented
function SetCurrentDirectoryA(const lpPathName:LPCSTR):BOOL;
Description: To be documented
function SetCurrentDirectoryW(const lpPathName:LPCWSTR):BOOL;
Description: To be documented
function GetCurrentDirectory(nBufferLength:DWORD; lpBuffer:LPSTR):DWORD; inline;
Description: To be documented
function GetCurrentDirectoryA(nBufferLength:DWORD; lpBuffer:LPSTR):DWORD;
Description: To be documented
function GetCurrentDirectoryW(nBufferLength:DWORD; lpBuffer:LPWSTR):DWORD;
Description: To be documented
function GetLongPathName(const lpszShortPath:LPCSTR; lpszLongPath:LPSTR; cchBuffer:DWORD):DWORD; inline;
Description: To be documented
function GetLongPathNameA(const lpszShortPath:LPCSTR; lpszLongPath:LPSTR; cchBuffer:DWORD):DWORD;
Description: To be documented
function GetLongPathNameW(const lpszShortPath:LPCWSTR; lpszLongPath:LPWSTR; cchBuffer:DWORD):DWORD;
Description: To be documented
function GetShortPathName(const lpszLongPath:LPCSTR; lpszShortPath:LPSTR; cchBuffer:DWORD):DWORD; inline;
Description: To be documented
function GetShortPathNameA(const lpszLongPath:LPCSTR; lpszShortPath:LPSTR; cchBuffer:DWORD):DWORD;
Description: To be documented
function GetShortPathNameW(const lpszLongPath:LPCWSTR; lpszShortPath:LPWSTR; cchBuffer:DWORD):DWORD;
Description: To be documented
function GetFullPathName(const lpFileName:LPCSTR; nBufferLength:DWORD; lpBuffer:LPSTR; var lpFilePart:LPSTR):DWORD; inline;
Description: To be documented
function GetFullPathNameA(const lpFileName:LPCSTR; nBufferLength:DWORD; lpBuffer:LPSTR; var lpFilePart:LPSTR):DWORD;
Description: To be documented
| Note | lpFilePart is currently ignored by Ultibo |
|---|
function GetFullPathNameW(const lpFileName:LPCWSTR; nBufferLength:DWORD; lpBuffer:LPWSTR; var lpFilePart:LPWSTR):DWORD;
Description: To be documented
| Note | lpFilePart is currently ignored by Ultibo |
|---|
Command line functions (RTL)
function SysParamCount:LongInt;
Description: To be documented
| Note | This should be in System however the implementation there will need to be modified |
|---|
function SysParamStr(Index:LongInt):String;
Description: To be documented
| Note | This should be in System however the implementation there will need to be modified |
|---|
Command line functions (Compatibility)
function GetCommandLine:LPSTR; inline;
Description: To be documented
function GetCommandLineA:LPSTR;
Description: To be documented
| Note | The returned string must be freed with SysUtils.StrDispose |
|---|
function GetCommandLineW:LPWSTR;
Description: To be documented
| Note | The returned string must be freed with SysUtils.StrDispose |
|---|
Command line functions (Ultibo)
function IsParamPresent(const AParam:String):Boolean;
Description: Check if the specified parameter is present in the command line
function GetParamIndex(const AParam:String):Integer;
Description: Get the index of the specified parameter in the command line
function GetParamValue(const AParam:String):String;
Description: Get the value of the specified parameter from the command line
Environment functions (Compatibility)
function GetEnvironmentStrings:LPSTR; inline;
Description: To be documented
function GetEnvironmentStringsA:LPSTR;
Description: To be documented
function GetEnvironmentStringsW:LPWSTR;
Description: To be documented
function FreeEnvironmentStrings(pstr:LPSTR):BOOL; inline;
Description: To be documented
function FreeEnvironmentStringsA(pstr:LPSTR):BOOL;
Description: To be documented
function FreeEnvironmentStringsW(pstr:LPWSTR):BOOL;
Description: To be documented
function GetEnvironmentVariable(const lpName:LPCSTR; lpBuffer:LPSTR; nSize:DWORD):DWORD; inline;
Description: To be documented
function GetEnvironmentVariableA(const lpName:LPCSTR; lpBuffer:LPSTR; nSize:DWORD):DWORD;
Description: To be documented
function GetEnvironmentVariableW(const lpName:LPCWSTR; lpBuffer:LPWSTR; nSize:DWORD):DWORD;
Description: To be documented
function SetEnvironmentVariable(const lpName,lpValue:LPCSTR):BOOL; inline;
Description: To be documented
function SetEnvironmentVariableA(const lpName,lpValue:LPCSTR):BOOL;
Description: To be documented
function SetEnvironmentVariableW(const lpName,lpValue:LPCWSTR):BOOL;
Description: To be documented
function ExpandEnvironmentStrings(const lpSrc:LPCSTR; lpDst:LPSTR; nSize:DWORD):DWORD; inline;
Description: To be documented
function ExpandEnvironmentStringsA(const lpSrc:LPCSTR; lpDst:LPSTR; nSize:DWORD):DWORD;
Description: To be documented
function ExpandEnvironmentStringsW(const lpSrc:LPCWSTR; lpDst:LPWSTR; nSize:DWORD):DWORD;
Description: To be documented
Error functions (Compatibility)
function GetLastError:DWORD; inline;
Description: Get the last error value for the calling thread
procedure SetLastError(dwErrCode:DWORD); inline;
Description: Set the last error value for the calling thread
GUID functions (Ultibo)
function CreateGUID:TGUID;
Description: Create a new GUID
| Note | GUID has the following format DWORD-WORD-WORD-WORD-WORDDWORD |
|---|
function GUIDToString(const Value:TGUID; Braces:Boolean = False):String;
Description: Convert a TGUID to a string representation
function StringToGUID(const Value:String):TGUID;
Description: Convert a string to a native TGUID type
function NullGUID(const GUID:TGUID):Boolean;
Description: Check if a TGUID is empty (All zeroes)
function CompareGUID(const GUID1,GUID2:TGUID):Boolean;
Description: Check whether two TGUID variables are equal
SID functions (Ultibo)
function SIDToString(ASID:PSID):String;
Description: To be documented
function StringToSID(const Value:String):PSID;
Description: To be documented
Numeric functions (Ultibo)
function Min(A,B:Integer):Integer; inline;
Description: To be documented
function Max(A,B:Integer):Integer; inline;
Description: To be documented
function MinEx(A,B:LongWord):LongWord; inline;
Description: To be documented
function MaxEx(A,B:LongWord):LongWord; inline;
Description: To be documented
function Min64(const A,B:Int64):Int64; inline;
Description: To be documented
function Max64(const A,B:Int64):Int64; inline;
Description: To be documented
function Or64(const Value1,Value2:Int64):Int64; inline;
Description: To be documented
function And64(const Value1,Value2:Int64):Int64; inline;
Description: To be documented
function Xor64(const Value1,Value2:Int64):Int64; inline;
Description: To be documented
function Not64(const Value:Int64):Int64; inline;
Description: To be documented
function Rol32(Value:LongWord; Count:Byte):LongWord; inline;
Description: To be documented
function Ror32(Value:LongWord; Count:Byte):LongWord; inline;
Description: To be documented
function WordSwap(AValue:Word):Word; inline;
Description: To be documented
function LongSwap(AValue:LongWord):LongWord; inline;
Description: To be documented
function Int64Swap(const AValue:Int64):Int64; inline;
Description: To be documented
function BufferSwap(ABuffer:Pointer; ASize:LongWord):Boolean;
Description: Swap each word in the buffer supplied up to size
| Note | Size is the number of Bytes in the buffer to swap |
|---|
Hash functions (Ultibo)
function GenerateNameHash(const Name:String; Size:Integer):LongWord;
Description: Sum of (byte value + 1) * (position + 257) for all bytes in uppercase string
| Note | Case Insensitive Hash |
|---|
function GeneratePasswordHash(const Password:String):LongWord;
Description: Deprecated function, use GenerateStringHash instead
function GenerateStringHash(const Value:String; CaseSensitive:Boolean):LongWord;
Description: Sum of (byte value + 1) * (position + 257) for all bytes in string
Locale functions (Compatibility)
function IsValidLocale(LocaleID:LCID; dwFlags:DWORD):BOOL; inline;
Description: To be documented
function GetSystemDefaultLCID:LCID; inline;
Description: To be documented
function GetUserDefaultLCID:LCID; inline;
Description: To be documented
function GetThreadLocale:LCID;
Description: To be documented
function SetThreadLocale(LocaleID:LCID):BOOL;
Description: To be documented
Locale functions (Ultibo)
function SetSystemDefaultLCID(LocaleID:LCID):BOOL; inline;
Description: To be documented
function WideCharToString(const ABuffer:PWideChar):String;
Description: A replacement for WideCharToString in System unit to allow cross platform compatibility
| Note | The WideStringManager installed by the Unicode unit should make the System version equivalent |
|---|
function WideCharLenToString(const ABuffer:PWideChar; ALength:Integer):String;
Description: A replacement for WideCharLenToString in System unit to allow cross platform compatibility
| Note | Length is the size of the Buffer in WideChars (not Bytes). The WideStringManager installed by the Unicode unit should make the System version equivalent. |
|---|
function StringToWideChar(const AString:String; ABuffer:PWideChar; ASize:Integer):Boolean;
Description: A replacement for StringToWideChar in System unit to allow cross platform compatibility
| Note | Size is the size of the Buffer in Bytes (not WideChars). The WideStringManager installed by the Unicode unit should make the System version equivalent. |
|---|
Code page functions (Compatibility)
function IsValidCodePage(CodePage:UINT):BOOL; inline;
Description: To be documented
function GetACP:UINT; inline;
Description: To be documented
function GetOEMCP:UINT; inline;
Description: To be documented
function GetConsoleCP:UINT; inline;
Description: To be documented
function SetConsoleCP(wCodePageID:UINT):BOOL; inline;
Description: To be documented
function GetConsoleOutputCP:UINT; inline;
Description: To be documented
function SetConsoleOutputCP(wCodePageID:UINT):BOOL; inline;
Description: To be documented
function GetCPInfo(CodePage:UINT; var lpCPInfo:TCPInfo):BOOL; inline;
Description: To be documented
function GetCPInfoEx(CodePage:UINT; dwFlags:DWORD; var lpCPInfoEx:CPINFOEXA):BOOL; inline;
Description: To be documented
function GetCPInfoExA(CodePage:UINT; dwFlags:DWORD; var lpCPInfoEx:CPINFOEXA):BOOL; inline;
Description: To be documented
function GetCPInfoExW(CodePage:UINT; dwFlags:DWORD; var lpCPInfoEx:CPINFOEXW):BOOL; inline;
Description: To be documented
Code page functions (Ultibo)
function SetACP(CodePage:UINT):BOOL; inline;
Description: To be documented
function SetOEMCP(CodePage:UINT):BOOL; inline;
Description: To be documented
Translation functions (Compatibility)
function MultiByteToWideChar(CodePage:UINT; dwFlags:DWORD; lpMultiByteStr:LPCSTR; cbMultiByte:Integer; lpWideCharStr:LPWSTR; cchWideChar:Integer):Integer; inline;
Description: To be documented
function WideCharToMultiByte(CodePage:UINT; dwFlags:DWORD; lpWideCharStr:LPCWSTR; cchWideChar:Integer; lpMultiByteStr:LPSTR; cbMultiByte:Integer; lpDefaultChar:LPCSTR; lpUsedDefaultChar:LPBOOL):Integer; inline;
Description: To be documented
function CompareString(Locale:LCID; dwCmpFlags:DWORD; lpString1:LPCSTR; cchCount1:Integer; lpString2:LPCSTR; cchCount2:Integer):Integer; inline;
Description: To be documented
function CompareStringA(Locale:LCID; dwCmpFlags:DWORD; lpString1:LPCSTR; cchCount1:Integer; lpString2:LPCSTR; cchCount2:Integer):Integer; inline;
Description: To be documented
function CompareStringW(Locale:LCID; dwCmpFlags:DWORD; lpString1:LPCWSTR; cchCount1:Integer; lpString2:LPCWSTR; cchCount2:Integer):Integer; inline;
Description: To be documented
function CharUpper(lpsz:LPSTR):LPSTR; inline;
Description: To be documented
function CharUpperA(lpsz:LPSTR):LPSTR; inline;
Description: To be documented
function CharUpperW(lpsz:LPWSTR):LPWSTR; inline;
Description: To be documented
function CharUpperBuff(lpsz:LPSTR; cchLength:DWORD):DWORD; inline;
Description: To be documented
function CharUpperBuffA(lpsz:LPSTR; cchLength:DWORD):DWORD; inline;
Description: To be documented
function CharUpperBuffW(lpsz:LPWSTR; cchLength:DWORD):DWORD; inline;
Description: To be documented
function CharLower(lpsz:LPSTR):LPSTR; inline;
Description: To be documented
function CharLowerA(lpsz:LPSTR):LPSTR; inline;
Description: To be documented
function CharLowerW(lpsz:LPWSTR):LPWSTR; inline;
Description: To be documented
function CharLowerBuff(lpsz:LPSTR; cchLength:DWORD):DWORD; inline;
Description: To be documented
function CharLowerBuffA(lpsz:LPSTR; cchLength:DWORD):DWORD; inline;
Description: To be documented
function CharLowerBuffW(lpsz:LPWSTR; cchLength:DWORD):DWORD; inline;
Description: To be documented
function AnsiToOem(lpszSrc:LPCSTR; lpszDst:LPSTR):BOOL; inline;
Description: To be documented
function AnsiToOemBuff(lpszSrc:LPCSTR; lpszDst:LPSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
function OemToAnsi(lpszSrc:LPCSTR; lpszDst:LPSTR):BOOL; inline;
Description: To be documented
function OemToAnsiBuff(lpszSrc:LPCSTR; lpszDst:LPSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
function CharToOem(lpszSrc:LPCSTR; lpszDst:LPSTR):BOOL; inline;
Description: To be documented
function CharToOemA(lpszSrc:LPCSTR; lpszDst:LPSTR):BOOL; inline;
Description: To be documented
function CharToOemW(lpszSrc:LPCWSTR; lpszDst:LPSTR):BOOL; inline;
Description: To be documented
function OemToChar(lpszSrc:LPCSTR; lpszDst:LPSTR):BOOL; inline;
Description: To be documented
function OemToCharA(lpszSrc:LPCSTR; lpszDst:LPSTR):BOOL; inline;
Description: To be documented
function OemToCharW(lpszSrc:LPCSTR; lpszDst:LPWSTR):BOOL; inline;
Description: To be documented
function CharToOemBuff(lpszSrc:LPCSTR; lpszDst:LPSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
function CharToOemBuffA(lpszSrc:LPCSTR; lpszDst:LPSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
function CharToOemBuffW(lpszSrc:LPCWSTR; lpszDst:LPSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
function OemToCharBuff(lpszSrc:LPCSTR; lpszDst:LPSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
function OemToCharBuffA(lpszSrc:LPCSTR; lpszDst:LPSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
function OemToCharBuffW(lpszSrc:LPCSTR; lpszDst:LPWSTR; cchDstLength:DWORD):BOOL; inline;
Description: To be documented
Handle functions (Compatibility)
function CloseHandle(hObject:HANDLE):BOOL;
Description: To be documented
function DuplicateHandle(hSourceProcessHandle:HANDLE; hSourceHandle:HANDLE; hTargetProcessHandle:HANDLE; lpTargetHandle:LPHANDLE; dwDesiredAccess:DWORD; bInheritHandle:BOOL; dwOptions:DWORD):BOOL;
Description: To be documented
function GetHandleInformation(hObject:HANDLE; var lpdwFlags:DWORD):BOOL;
Description: To be documented
function SetHandleInformation(hObject:HANDLE; dwMask:DWORD; dwFlags:DWORD):BOOL;
Description: To be documented
Memory functions (Compatibility)
procedure MoveMemory(Destination,Source:PVOID; Length:SIZE_T); inline;
Description: To be documented
procedure CopyMemory(Destination,Source:PVOID; Length:SIZE_T); inline;
Description: To be documented
procedure FillMemory(Destination:PVOID; Length:SIZE_T;Fill:BYTE); inline;
Description: To be documented
procedure ZeroMemory(Destination:PVOID; Length:SIZE_T); inline;
Description: To be documented
function GlobalAlloc(uFlags:UINT; dwBytes:SIZE_T):HGLOBAL;
Description: To be documented
| Note | All flags except GMEM_ZEROINIT are ignored by Ultibo |
|---|
function GlobalReAlloc(hMem:HGLOBAL; dwBytes:SIZE_T; uFlags:UINT):HGLOBAL;
Description: To be documented
function GlobalFree(hMem:HGLOBAL):HGLOBAL;
Description: To be documented
function GlobalSize(hMem:HGLOBAL):SIZE_T;
Description: To be documented
function GlobalFlags(hMem:HGLOBAL):UINT;
Description: To be documented
function GlobalLock(hMem:HGLOBAL):LPVOID;
Description: To be documented
function GlobalUnlock(hMem:HGLOBAL):BOOL;
Description: To be documented
function GlobalHandle(pMem:LPCVOID):HGLOBAL;
Description: To be documented
procedure GlobalMemoryStatus(var lpBuffer:MEMORYSTATUS);
Description: To be documented
function GlobalMemoryStatusEx(var lpBuffer:MEMORYSTATUSEX):BOOL;
Description: To be documented
function LocalAlloc(uFlags:UINT; uBytes:SIZE_T):HLOCAL;
Description: To be documented
| Note | All flags except LMEM_ZEROINIT are ignored by Ultibo |
|---|
function LocalReAlloc(hMem:HLOCAL; uBytes:SIZE_T; uFlags:UINT):HLOCAL;
Description: To be documented
function LocalFree(hMem:HLOCAL):HLOCAL;
Description: To be documented
function LocalSize(hMem:HLOCAL):SIZE_T;
Description: To be documented
function LocalFlags(hMem:HLOCAL):UINT;
Description: To be documented
function LocalLock(hMem:HLOCAL):LPVOID;
Description: To be documented
function LocalUnlock(hMem:HLOCAL):BOOL;
Description: To be documented
function LocalHandle(pMem:LPCVOID):HLOCAL;
Description: To be documented
function VirtualAlloc(lpAddress:LPVOID; dwSize:SIZE_T; flAllocationType:DWORD; flProtect:DWORD):LPVOID;
Description: To be documented
| Note | The value of lpAddress on entry is currently ignored by Ultibo. The value of flProtect is currently ignored by Ultibo. As per Win32, the value of dwSize is rounded to the next page multiple. |
|---|
function VirtualFree(lpAddress:LPVOID; dwSize:SIZE_T; dwFreeType:DWORD):BOOL;
Description: To be documented
function VirtualQuery(lpAddress:LPCVOID; var lpBuffer:MEMORY_BASIC_INFORMATION; dwLength:DWORD):DWORD;
Description: To be documented
function VirtualLock(lpAddress:LPVOID; dwSize:SIZE_T):BOOL;
Description: To be documented
function VirtualUnlock(lpAddress:LPVOID; dwSize:SIZE_T):BOOL;
Description: To be documented
function FlushInstructionCache(hProcess:HANDLE; lpBaseAddress:LPCVOID; dwSize:DWORD):BOOL;
Description: To be documented
function GetNumaHighestNodeNumber(var HighestNodeNumber:ULONG):BOOL;
Description: To be documented
function GetNumaProcessorNode(const Processor:Byte; var NodeNumber:Byte):BOOL;
Description: To be documented
Tls functions (Compatibility)
function TlsAlloc:DWORD;
Description: To be documented
function TlsAllocEx(bFree:BOOL):DWORD;
Description: To be documented
| bFree | If true then TlsValue will be freed on TlsFree or thread terminate |
|---|
function TlsGetValue(dwTlsIndex:DWORD):LPVOID;
Description: To be documented
function TlsSetValue(dwTlsIndex:DWORD; lpTlsValue:LPVOID):BOOL;
Description: To be documented
function TlsFree(dwTlsIndex:DWORD):BOOL;
Description: To be documented
Thread functions (Compatibility)
function SwitchToThread:BOOL; inline;
Description: To be documented
procedure Sleep(dwMilliseconds:DWORD); inline;
Description: To be documented
function SleepEx(dwMilliseconds:DWORD; bAlertable:BOOL):DWORD; inline;
Description: To be documented
| Note | The bAlertable parameter is not currently used but is intended for I/O completion callback from ReadFileEx/WriteFileEx |
|---|
function GetCurrentThread:HANDLE;
Description: To be documented
function GetCurrentThreadId:DWORD;
Description: To be documented
| Note | Thread Id and Thread Handle are currently equivalent |
|---|
function GetThreadPriority(hThread:HANDLE):Integer;
Description: To be documented
| Note | Returns priority values in the range -15..+15, must use the FPC RTL function |
|---|
function SetThreadPriority(hThread:HANDLE; nPriority:Integer):BOOL;
Description: To be documented
| Note | Expects priority values in the range -15..+15, must use the FPC RTL function |
|---|
function GetExitCodeThread(hThread:HANDLE; var lpExitCode:DWORD):BOOL;
Description: To be documented
function GetThreadAffinityMask(hThread:HANDLE):DWORD_PTR;
Description: To be documented
function SetThreadAffinityMask(hThread:HANDLE; dwThreadAffinityMask:DWORD_PTR):DWORD_PTR;
Description: To be documented
function GetThreadTimes(hThread:HANDLE; var lpCreationTime,lpExitTime,lpKernelTime,lpUserTime:FILETIME):BOOL;
Description: To be documented
function CreateThread(lpThreadAttributes:LPSECURITY_ATTRIBUTES; dwStackSize:DWORD; lpStartAddress:LPTHREAD_START_ROUTINE; lpParameter:LPVOID; dwCreationFlags:DWORD; lpThreadId:LPDWORD):HANDLE;
Description: To be documented
function OpenThread(dwDesiredAccess:DWORD; bInheritHandle:BOOL; dwThreadId:DWORD):HANDLE;
Description: To be documented
function SuspendThread(hThread:HANDLE):DWORD;
Description: To be documented
function ResumeThread(hThread:HANDLE):DWORD;
Description: To be documented
function TerminateThread(hThread:HANDLE; dwExitCode:DWORD):BOOL;
Description: To be documented
procedure ExitThread(dwExitCode:DWORD);
Description: To be documented
function WaitForSingleObject(hHandle:HANDLE; dwMilliseconds:DWORD):DWORD;
Description: To be documented
function WaitForMultipleObjects(nCount:DWORD; lpHandles:PHANDLE; bWaitAll:BOOL; dwMilliseconds:DWORD):DWORD;
Description: To be documented
function WaitForSingleObjectEx(hHandle:HANDLE; dwMilliseconds:DWORD; bAlertable:BOOL):DWORD;
Description: To be documented
| Note | The bAlertable parameter is not currently used but is intended for I/O completion callback from ReadFileEx/WriteFileEx |
|---|
function WaitForMultipleObjectsEx(nCount:DWORD; lpHandles:PHANDLE; bWaitAll:BOOL; dwMilliseconds:DWORD; bAlertable:BOOL):DWORD;
Description: To be documented
| Note | The bAlertable parameter is not currently used but is intended for I/O completion callback from ReadFileEx/WriteFileEx |
|---|
Thread functions (Ultibo)
function BeginThreadEx(ThreadFunction:TThreadFunc; Parameter:Pointer; var ThreadId:TThreadID; const StackSize:SizeUInt; Priority,Affinity,CPU:LongWord; const Name:PChar):TThreadID;
Description: To be documented
Message functions (Compatibility)
function WaitMessage:BOOL;
Description: To be documented
function GetMessage(lpMsg:LPMSG; hThread:HANDLE; wMsgFilterMin,wMsgFilterMax:UINT):BOOL;
Description: To be documented
function PeekMessage(var lpMsg:MSG; hThread:HANDLE; wMsgFilterMin,wMsgFilterMax,wRemoveMsg:UINT):BOOL;
Description: To be documented
function PostMessage(hThread:HANDLE; Msg:UINT; wParam:WPARAM; lParam:LPARAM):BOOL;
Description: To be documented
function SendMessage(hThread:HANDLE; Msg:UINT; wParam:WPARAM; lParam:LPARAM):LRESULT;
Description: To be documented
function SendMessageTimeout(hThread:HANDLE; Msg:UINT; wParam:WPARAM; lParam:LPARAM; fuFlags,uTimeout:UINT; var lpdwResult:DWORD_PTR):LRESULT;
Description: To be documented
Interlocked functions (Compatibility)
function InterlockedIncrement(var lpAddend:LONG):LONG; inline;
Description: To be documented
function InterlockedDecrement(var lpAddend:LONG):LONG; inline;
Description: To be documented
function InterlockedExchange(var Target:LONG; Value:LONG):LONG; inline;
Description: To be documented
function InterlockedExchangePointer(var Target:PVOID; Value:PVOID):PVOID; inline;
Description: To be documented
function InterlockedExchangeAdd(var Addend:LONG; Value:LONG):LONG; inline;
Description: To be documented
function InterlockedCompareExchange(var Destination:LONG; Exchange:LONG; Comperand:LONG):LONG; inline;
Description: To be documented
function InterlockedCompareExchangePointer(var Destination:PVOID; Exchange,Comperand:PVOID):PVOID; inline;
Description: To be documented
Mutex functions (Compatibility)
function CreateMutex(lpMutexAttributes:LPSECURITY_ATTRIBUTES; bInitialOwner:BOOL; const lpName:LPCSTR):HANDLE; inline;
Description: To be documented
function CreateMutexA(lpMutexAttributes:LPSECURITY_ATTRIBUTES; bInitialOwner:BOOL; const lpName:LPCSTR):HANDLE;
Description: To be documented
function CreateMutexW(lpMutexAttributes:LPSECURITY_ATTRIBUTES; bInitialOwner:BOOL; const lpName:LPCWSTR):HANDLE;
Description: To be documented
function OpenMutex(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCSTR):HANDLE; inline;
Description: To be documented
function OpenMutexA(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCSTR):HANDLE;
Description: To be documented
function OpenMutexW(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCWSTR):HANDLE;
Description: To be documented
function ReleaseMutex(hMutex:HANDLE):BOOL;
Description: To be documented
Semaphore functions (Compatibility)
function CreateSemaphore(lpSemaphoreAttributes:LPSECURITY_ATTRIBUTES; lInitialCount,lMaximumCount:LONG; const lpName:LPCSTR):HANDLE; inline;
Description: To be documented
function CreateSemaphoreA(lpSemaphoreAttributes:LPSECURITY_ATTRIBUTES; lInitialCount,lMaximumCount:LONG; const lpName:LPCSTR):HANDLE;
Description: To be documented
function CreateSemaphoreW(lpSemaphoreAttributes:LPSECURITY_ATTRIBUTES; lInitialCount,lMaximumCount:LONG; const lpName:LPCWSTR):HANDLE;
Description: To be documented
function OpenSemaphore(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCSTR):HANDLE; inline;
Description: To be documented
function OpenSemaphoreA(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCSTR):HANDLE;
Description: To be documented
function OpenSemaphoreW(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCWSTR):HANDLE;
Description: To be documented
function ReleaseSemaphore(hSemaphore:HANDLE; lReleaseCount:LONG; lpPreviousCount:LPLONG):BOOL;
Description: To be documented
Critical section functions (Compatibility)
procedure InitializeCriticalSection(var lpCriticalSection:CRITICAL_SECTION);
Description: To be documented
procedure EnterCriticalSection(var lpCriticalSection:CRITICAL_SECTION);
Description: To be documented
procedure LeaveCriticalSection(var lpCriticalSection:CRITICAL_SECTION);
Description: To be documented
function TryEnterCriticalSection(var lpCriticalSection:CRITICAL_SECTION):BOOL;
Description: To be documented
function InitializeCriticalSectionAndSpinCount(var lpCriticalSection:CRITICAL_SECTION; dwSpinCount:DWORD):BOOL;
Description: To be documented
function SetCriticalSectionSpinCount(var lpCriticalSection:CRITICAL_SECTION; dwSpinCount:DWORD):DWORD;
Description: To be documented
procedure DeleteCriticalSection(var lpCriticalSection:CRITICAL_SECTION);
Description: To be documented
Condition variable functions (Compatibility)
procedure InitializeConditionVariable(var ConditionVariable:CONDITION_VARIABLE);
Description: Initializes a condition variable
| ConditionVariable | The condition variable to initialize |
|---|
procedure WakeConditionVariable(var ConditionVariable:CONDITION_VARIABLE);
Description: Wake a single thread waiting on the specified condition variable
| ConditionVariable | The condition variable to wake |
|---|
procedure WakeAllConditionVariable(var ConditionVariable:CONDITION_VARIABLE);
Description: Wake all threads waiting on the specified condition variable
| ConditionVariable | The condition variable to wake |
|---|
function SleepConditionVariableCS(var ConditionVariable:CONDITION_VARIABLE; var CriticalSection:CRITICAL_SECTION; dwMilliseconds:DWORD):BOOL;
Description: Sleeps on the specified condition variable and releases the specified critical section as an atomic operation
| ConditionVariable | The condition variable to sleep on |
|---|---|
| CriticalSection | The critical section object to release (This critical section must be entered exactly once by the caller at the time SleepConditionVariableCS is called) |
| dwMilliseconds | The time-out interval, in milliseconds (If the time-out interval elapses, the function re-acquires the critical section and returns false) |
procedure DeleteConditionVariable(var ConditionVariable:CONDITION_VARIABLE);
Description: Destroy a condition variable
| ConditionVariable | The condition variable to destroy |
|---|---|
| Note | This function is Ultibo specific and is not part of the normal Windows API |
Event functions (Compatibility)
function CreateEvent(lpEventAttributes:LPSECURITY_ATTRIBUTES; bManualReset,bInitialState:BOOL; const lpName:LPCSTR):HANDLE; inline;
Description: To be documented
function CreateEventA(lpEventAttributes:LPSECURITY_ATTRIBUTES; bManualReset,bInitialState:BOOL; const lpName:LPCSTR):HANDLE;
Description: To be documented
function CreateEventW(lpEventAttributes:LPSECURITY_ATTRIBUTES; bManualReset,bInitialState:BOOL; const lpName:LPCWSTR):HANDLE;
Description: To be documented
function OpenEvent(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCSTR):HANDLE; inline;
Description: To be documented
function OpenEventA(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCSTR):HANDLE;
Description: To be documented
function OpenEventW(dwDesiredAccess:DWORD; bInheritHandle:BOOL; const lpName:LPCWSTR):HANDLE;
Description: To be documented
function SetEvent(hEvent:HANDLE):BOOL;
Description: To be documented
function ResetEvent(hEvent:HANDLE):BOOL;
Description: To be documented
function PulseEvent(hEvent:HANDLE):BOOL;
Description: To be documented
Process functions (Compatibility)
function GetProcessAffinityMask(hProcess:HANDLE; var lpProcessAffinityMask,lpSystemAffinityMask:DWORD_PTR):BOOL;
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
function SetProcessAffinityMask(hProcess:HANDLE; dwProcessAffinityMask:DWORD_PTR):BOOL;
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
function GetProcessTimes(hProcess:HANDLE; var lpCreationTime,lpExitTime,lpKernelTime,lpUserTime:FILETIME):BOOL;
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
function GetProcessIoCounters(hProcess:HANDLE; var lpIoCounters:IO_COUNTERS):BOOL;
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
function GetCurrentProcess:HANDLE;
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
function GetCurrentProcessId:DWORD;
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead. Thread Id and Thread Handle are currently equivalent. |
|---|
procedure ExitProcess(uExitCode:UINT);
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
procedure FatalExit(ExitCode:Integer);
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
function TerminateProcess(hProcess:HANDLE; uExitCode:UINT):BOOL;
Description: To be documented
| Note | Ultibo has no concept of a Process so this function is mapped to Threads instead |
|---|
Debug functions (Compatibility)
procedure OutputDebugString(const lpOutputString:LPCSTR); inline;
Description: To be documented
procedure OutputDebugStringA(const lpOutputString:LPCSTR);
Description: To be documented
procedure OutputDebugStringW(const lpOutputString:LPCWSTR);
Description: To be documented
Library functions (Compatibility)
function lstrcmp(lpString1,lpString2:LPCSTR):Integer; inline;
Description: To be documented
function lstrcmpA(lpString1,lpString2:LPCSTR):Integer;
Description: To be documented
function lstrcmpW(lpString1,lpString2:LPCWSTR):Integer;
Description: To be documented
function lstrcmpi(lpString1,lpString2:LPCSTR):Integer; inline;
Description: To be documented
function lstrcmpiA(lpString1,lpString2:LPCSTR):Integer;
Description: To be documented
function lstrcmpiW(lpString1,lpString2:LPCWSTR):Integer;
Description: To be documented
function lstrcpy(lpString1:LPSTR; lpString2:LPCSTR):LPSTR; inline;
Description: To be documented
function lstrcpyA(lpString1:LPSTR; lpString2:LPCSTR):LPSTR;
Description: To be documented
function lstrcpyW(lpString1:LPWSTR; lpString2:LPCWSTR):LPWSTR;
Description: To be documented
function lstrcpyn(lpString1:LPSTR; lpString2:LPCSTR; iMaxLength:Integer):LPSTR; inline;
Description: To be documented
function lstrcpynA(lpString1:LPSTR; lpString2:LPCSTR; iMaxLength:Integer):LPSTR;
Description: To be documented
function lstrcpynW(lpString1:LPWSTR; lpString2:LPCWSTR; iMaxLength:Integer):LPWSTR;
Description: To be documented
function lstrcat(lpString1:LPSTR; lpString2:LPCSTR):LPSTR; inline;
Description: To be documented
function lstrcatA(lpString1:LPSTR; lpString2:LPCSTR):LPSTR;
Description: To be documented
function lstrcatW(lpString1:LPWSTR; lpString2:LPCWSTR):LPWSTR;
Description: To be documented
function lstrlen(lpString:LPCSTR):Integer; inline;
Description: To be documented
function lstrlenA(lpString:LPCSTR):Integer;
Description: To be documented
function lstrlenW(lpString:LPCWSTR):Integer;
Description: To be documented
Return to Unit Reference