Difference between revisions of "Unit UltiboUtils"

From Ultibo.org
Jump to: navigation, search
 
(One intermediate revision by the same user not shown)
Line 5: Line 5:
 
----
 
----
  
'''Ultibo utils unit'''
+
'''Ultibo Utils unit'''
 
+
''To be documented''
+
  
 
=== Constants ===
 
=== Constants ===
Line 720: Line 718:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function AllocateCommandLine(const ACommandLine:String; out AArgC:Integer):PPChar;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function AllocateCommandLine(const ACommandLine:String; out AArgC:Integer):PPAnsiChar;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Allocate a C style command line and return ArgC and ArgV in the correct format</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Allocate a C style command line and return ArgC and ArgV in the correct format</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
Line 735: Line 733:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure ReleaseCommandLine(AArgV:PPChar);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure ReleaseCommandLine(AArgV:PPAnsiChar);</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Free a C command line allocated by AllocateCommandLine</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Free a C command line allocated by AllocateCommandLine</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
Line 795: Line 793:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function DuplicateString(AString:PChar):PChar;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function DuplicateString(AString:PAnsiChar):PAnsiChar;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
Line 819: Line 817:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function DuplicateMultiString(AString:PChar):PChar;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function DuplicateMultiString(AString:PAnsiChar):PAnsiChar;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">

Latest revision as of 03:55, 12 September 2024

Return to Unit Reference


Description


Ultibo Utils unit

Constants



BoolToStr constants BOOLSTR_*
BOOLSTR_TRUEFALSE = 0;  
BOOLSTR_YESNO = 1;  
BOOLSTR_ZEROONE = 2;  


Type definitions


None defined

Public variables


None defined

Function declarations



String functions

function GetFirstWord(var AValue:String; const ADelimiter:String):String;
Description: To be documented
Note None documented


function GetLastWord(var AValue:String; const ADelimiter:String):String;
Description: To be documented
Note None documented


function PadString(const AValue:String; AChar:Char;ALength:Integer):String;
Description: System StringOfChar may not handle Length < 0 correctly
Note None documented


function StrOfChar(const AValue:String; ALength:Integer):String;
Description: Use System StringOfChar instead
Note None documented


function StrToBool(const AValue:String):Boolean;
Description: To be documented
Note None documented


function IntToStrLen(AValue:Integer; ADigits:Integer):String;
Description: To be documented
Note None documented


function StrToLongWord(const AValue:String):LongWord;
Description: To be documented
Note None documented


function BoolToStr(AValue:Boolean):String;
Description: To be documented
Note None documented


function BoolToStrEx(AValue:Boolean; AType:Integer):String;
Description: To be documented
Note None documented


function InFixStr(const Value:String):String;
Description: To be documented
Note None documented


function InFixStrEx(const Value:String):String;
Description: To be documented
Note None documented


function RemoveSpaces(const Text:String):String;
Description: To be documented
Note None documented


function SpaceCount(const Text:String):Integer;
Description: To be documented
Note None documented


function NormaliseSpaces(const Text:String):String;
Description: To be documented
Note None documented


function NormaliseCase(const Text:String):String;
Description: To be documented
Note None documented


function StringFill(const Text:String; Count:Integer):String;
Description: To be documented
Note None documented


function RemoveQuotes(const AValue:String):String;
Description: To be documented
Note None documented


function RemoveBraces(const AValue:String):String;
Description: To be documented
Note None documented


function RemoveBrackets(const AValue:String):String;
Description: To be documented
Note None documented


function RemoveSingleQuotes(const AValue:String):String;
Description: To be documented
Note None documented


function RemoveCurlyBraces(const AValue:String):String;
Description: To be documented
Note None documented


function IsAlpha(const AValue:String):Boolean;
Description: To be documented
Note None documented


function IsNumeric(const AValue:String):Boolean;
Description: To be documented
Note None documented


function RemoveNonAlpha(const Value:String):String;
Description: To be documented
Note None documented


function AddQuotes(const AValue:String):String;
Description: To be documented
Note None documented


function AddBraces(const AValue:String):String;
Description: To be documented
Note None documented


function AddBrackets(const AValue:String):String;
Description: To be documented
Note None documented


function AddSingleQuotes(const AValue:String):String;
Description: To be documented
Note None documented


function AddCurlyBraces(const AValue:String):String;
Description: To be documented
Note None documented


function NoOfChars(const AValue:String; AChar:Char):Integer;
Description: To be documented
Note None documented


function ReplaceChar(const AValue:String; AChar,AReplace:Char):String;
Description: To be documented
Note None documented


function EncodeString(const AValue,AKey:String):String;
Description: To be documented
Note None documented


function DecodeString(const AValue,AKey:String):String;
Description: To be documented
Note None documented


procedure DelimitStrings(AStrings:TStrings; var AString:String; const ADelimiter:String);
Description: To be documented
Note None documented


procedure UndelimitString(const AString:String; AStrings:TStrings; const ADelimiter:String);
Description: To be documented
Note None documented


procedure UndelimitQuotedString(const AString:String; AStrings:TStrings; const ADelimiter:String);
Description: To be documented
Note None documented


function AddSlashes(const AFilePath:String):String;
Description: To be documented
Note None documented


function AddTrailingSlash(const AFilePath:String):String;
Description: To be documented
Note None documented


function AddLeadingSlash(const AFilePath:String):String;
Description: To be documented
Note None documented


function StripSlashes(const AFilePath:String):String;
Description: To be documented
Note None documented


function StripTrailingSlash(const AFilePath:String):String;
Description: To be documented
Note None documented


function StripLeadingSlash(const AFilePath:String):String;
Description: To be documented
Note None documented


function AddTrailingDot(const AValue:String):String;
Description: To be documented
Note None documented


function AddLeadingDot(const AValue:String):String;
Description: To be documented
Note None documented


function StripTrailingDot(const AValue:String):String;
Description: To be documented
Note None documented


function StripLeadingDot(const AValue:String):String;
Description: To be documented
Note None documented


function AddTrailingChar(const AFilePath,ASlashChar:String):String;
Description: To be documented
Note None documented


function AddLeadingChar(const AFilePath,ASlashChar:String):String;
Description: To be documented
Note None documented


function StripTrailingChar(const AFilePath,ASlashChar:String):String;
Description: To be documented
Note None documented


function StripLeadingChar(const AFilePath,ASlashChar:String):String;
Description: To be documented
Note None documented


function IsWildcard(const Value:String):Boolean;
Description: To be documented
Note None documented


function UniqueName(const BaseName:String; CurrentNames:TStrings):String;
Description: To be documented
Note None documented


function WildcardNameMatch(const Name,Wildcard:String; CaseSensitive:Boolean):Boolean;
Description: To be documented
Note None documented


function AddQuotesIfSpaced(const AValue:String):String;
Description: To be documented
Note None documented


function ExtractCommand(const ACommandLine:String):String;
Description: To be documented
Note None documented


function ExtractParameters(const ACommandLine:String):String;
Description: To be documented
Note None documented


function AllocateCommandLine(const ACommandLine:String; out AArgC:Integer):PPAnsiChar;
Description: Allocate a C style command line and return ArgC and ArgV in the correct format
CommandLine The command line to be formatted into C style ArgV and ArgC
ArgC The count of command line parameters in the result


procedure ReleaseCommandLine(AArgV:PPAnsiChar);
Description: Free a C command line allocated by AllocateCommandLine
ArgV The command line to be freed


function MultiStringToStrings(ABuffer:Pointer; ASize:Integer; AStrings:TStrings):Boolean;
Description: To be documented
Note None documented


function StringsToMultiString(AStrings:TStrings; var ABuffer:Pointer; var ASize:Integer):Boolean;
Description: To be documented
Note The returned buffer must be freed using FreeMem


function MultiStringToDelimited(ABuffer:PChar; ADelimiter:String):String;
Description: To be documented
Note None documented


function DelimitedToMultiString(const AString:String; ADelimiter:String):PChar;
Description: To be documented
Note The returned string must be freed using LocalFree


function DuplicateString(AString:PAnsiChar):PAnsiChar;
Description: To be documented
Note The returned string must be freed using LocalFree


function DuplicateWideString(AString:PWideChar):PWideChar;
Description: To be documented
Note The returned string must be freed using LocalFree


function DuplicateMultiString(AString:PAnsiChar):PAnsiChar;
Description: To be documented
Note The returned string must be freed using LocalFree


function DuplicateMultiWideString(AString:PWideChar):PWideChar;
Description: To be documented
Note The returned string must be freed using LocalFree


File functions

function IsRootDirectory(const Path:String):Boolean;
Description: To be documented
Note None documented


function IsEightDotThree(const FileName:String):Boolean;
Description: To be documented
Note None documented


function TruncateLongName(const FileName:String):String;
Description: To be documented
Note None documented


function GenerateShortName(const FileName:String; AliasCount:Integer):String;
Description: To be documented
Note If AliasCount is less than 0 then dont generate the numeric tail


function GenerateShortNameEx(const FileName:String; AliasCount:Integer; Hash:Word; UseHash:Boolean):String;
Description: To be documented
Note If AliasCount is less than 0 then dont generate the numeric tail


function WildcardFileMatch(const FileName,Wildcard:String; CaseSensitive:Boolean):Boolean;
Description: To be documented
Note None documented


function GetFileInfo(const FileName:String; var FileTime,FileSize:Integer; var FileAttr:LongWord):Boolean;
Description: To be documented
Note None documented


function CompareFileInfo(const SourceFile,DestFile:String):Boolean;
Description: To be documented
Note None documented


Date functions

function IsCurrentDate(ADate:TDateTime):Boolean;
Description: To be documented
Note None documented


function IsCurrentTime(ATime:TDateTime):Boolean;
Description: To be documented
Note None documented


function IsCurrentMinute(AMinute:Integer):Boolean;
Description: To be documented
Note None documented


function IsCurrentHour(AHour:Integer):Boolean;
Description: To be documented
Note None documented


function IsCurrentWeekDay(AWeekDay:Integer):Boolean;
Description: To be documented
Note None documented


function IsCurrentDay(ADay:Integer):Boolean;
Description: To be documented
Note None documented


function IsCurrentMonth(AMonth:Integer):Boolean;
Description: To be documented
Note None documented


function IsCurrentYear(AYear:Integer):Boolean;
Description: To be documented
Note None documented


function GetMinute(ADateTime:TDateTime):Integer;
Description: To be documented
Note None documented


function GetHour(ADateTime:TDateTime):Integer;
Description: To be documented
Note None documented


function GetWeekday(ADateTime:TDateTime):Integer;
Description: To be documented
Note None documented


function GetDay(ADateTime:TDateTime):Integer;
Description: To be documented
Note None documented


function GetMonth(ADateTime:TDateTime):Integer;
Description: To be documented
Note None documented


function GetYear(ADateTime:TDateTime):Integer;
Description: To be documented
Note None documented


function SecondsSince(ADateTime:TDateTime):LongWord;
Description: To be documented
Note None documented


function MinutesSince(ADateTime:TDateTime):LongWord;
Description: To be documented
Note None documented


function HoursSince(ADateTime:TDateTime):LongWord;
Description: To be documented
Note None documented


function DaysSince(ADateTime:TDateTime):LongWord;
Description: To be documented
Note None documented


function MonthsSince(ADateTime:TDateTime):LongWord;
Description: To be documented
Note None documented


function YearsSince(ADateTime:TDateTime):LongWord;
Description: To be documented
Note None documented


function DayOfYear(ADateTime:TDateTime):LongWord;
Description: To be documented
Note None documented


function SubtractSeconds(ADateTime:TDateTime; ASeconds:LongWord):TDateTime;
Description: To be documented
Note None documented


function TickCount:LongWord;
Description: Returns number of milliseconds since Ultibo started using GetTickCount
Note None documented


function NormaliseDate(const ADate:String):String;
Description: To be documented
Note None documented


function FormatEmailDate(ADateTime:TDateTime):String;
Description: To be documented
Note None documented


function ShortMonthToMonth(const AShortMonth:String):LongWord;
Description: To be documented
Note None documented


function LongMonthToMonth(const ALongMonth:String):LongWord;
Description: To be documented
Note None documented


function TwoDigitYearToYear(AYear:LongWord):LongWord;
Description: To be documented
Note None documented


Network functions

function CheckEmailAddress(const EmailAddress:String):Boolean;
Description: To be documented
Note None documented


function StripEmailAddress(const EmailAddress:String):String;
Description: To be documented
Note None documented


function FormatEmailAddress(const FullName,EmailAddress:String):String;
Description: To be documented
Note None documented


function GetUserFromEmail(const EmailAddress:String):String;
Description: To be documented
Note None documented


function GetDomainFromEmail(const EmailAddress:String):String;
Description: To be documented
Note None documented


Miscellaneous functions

function CloneSid(ASid:Pointer):Pointer;
Description: To be documented
Note None documented


function CloneDescriptor(ADescriptor:Pointer):Pointer;
Description: To be documented
Note None documented


function CompareSid(ASid1,ASid2:Pointer):Boolean;
Description: Caller should first compare the Hashes
Note None documented


function CompareDescriptor(ADescriptor1,ADescriptor2:Pointer):Boolean;
Description: Caller should first compare the Hashes
Note None documented


function GenerateSidHash(ASid:Pointer; ASize:LongWord):LongWord;
Description: To be documented
Note None documented


function GenerateDescriptorHash(ADescriptor:Pointer; ASize:LongWord):LongWord;
Description: To be documented
Note None documented


Return to Unit Reference