TFarStandardFunctions
The FarStandardFunctions stucture for Delphi:
TFarStandardFunctions = packed record StructSize: integer; atoi: TFarStdAToI; atoi64: TFarStdAToI64; itoa: TFarStdIToA; itoa64: TFarStdIToA64; sprintf: pointer; sscanf: pointer; qsort: TFarStdQSort; bsearch: TFarStdBSearch; qsortex: TFarStdQSortEx; Reserved: packed array[0..8] of DWORD; LIsLower: TFarStdLocalIsLower; LIsUpper: TFarStdLocalIsUpper; LIsAlpha: TFarStdLocalIsAlpha; LIsAlphanum: TFarStdLocalIsAlphaNum; LUpper: TFarStdLocalUpper; LLower: TFarStdLocalLower; LUpperBuf: TFarStdLocalUpperBuf; LLowerBuf: TFarStdLocalLowerBuf; LStrupr: TFarStdLocalStrUpr; LStrlwr: TFarStdLocalStrLwr; LStricmp: TFarStdLocalStrICmp; LStrnicmp: TFarStdLocalStrNICmp; Unquote: TFarStdUnquote; ExpandEnvironmentStr: TFarStdExpandEnvironmentStr; LTrim: TFarStdLTrim; RTrim: TFarStdRTrim; Trim: TFarStdTrim; TruncStr: TFarStdTruncStr; TruncPathStr: TFarStdTruncPathStr; QuoteSpaceOnly: TFarStdQuoteSpaceOnly; PointToName: TFarStdPointToName; GetPathRoot: TFarStdGetPathRoot; AddEndSlash: TFarStdAddEndSlash; CopyToClipboard: TFarStdCopyToClipboard; PasteFromClipboard: TFarStdPasteFromClipboard; FarKeyToName: TFarStdKeyToKeyName; FarNameToKey: TFarStdKeyNameToKey; FarInputRecordToKey: TFarStdInputRecordToKey; XLAT: TFarStdXLAT; GetFileOwner: TFarStdGetFileOwner; GetNumberOfLinks: TFarStdGetNumberOfLinks; FarRecurseSearch: TFarRecursiveSearch; MkTemp: TFarStdMkTemp; DeleteBuffer: TFarStdDeleteBuffer; ProcessName: TFarStdProcessName; MkLink: TFarStdMkLink; ConvertNameToReal: TFarStdConvertNameToReal; GetReparsePointInfo: TFarStdGetReparsePointInfo; end; PFarStandardFunctions = ^TFarStandardFunctions;
Where:
TFarStdatoi = function( S: PChar): integer; stdcall; TFarStdAToI64 = function( S: PChar): int64; stdcall; TFarStdIToA = function( Value: integer; Str: PChar; Radix: integer): PChar; stdcall; TFarStdIToA64 = function( Value: int64; Str: PChar; Radix: integer): PChar; stdcall; TFarStdQSortFunc = function( Param1: pointer; Param2: pointer): integer; cdecl; TFarStdQSort = procedure( Base: pointer; NElem: size_t; Width: size_t; fcmp: TFarStdQSortFunc); stdcall; TFarStdBSearch = procedure( Key: pointer; Base: pointer; NElem: size_t; Width: size_t; fcmp: TFarStdQSortFunc); stdcall; TFarStdLocalIsLower = function( Ch: integer): integer; stdcall; TFarStdLocalIsUpper = function( Ch: integer): integer; stdcall; TFarStdLocalIsAlpha = function( Ch: integer): integer; stdcall; TFarStdLocalIsAlphaNum = function( Ch: integer): integer; stdcall; TFarStdLocalUpper = function( LowerChar: integer): integer; stdcall; TFarStdLocalLower = function( UpperChar: integer): integer; stdcall; TFarStdLocalUpperBuf = procedure( Buf: PChar; Length: integer); stdcall; TFarStdLocalLowerBuf = procedure( Buf: PChar; Length: integer); stdcall; TFarStdLocalStrUpr = procedure( s1: PChar); stdcall; TFarStdLocalStrLwr= procedure( s1: PChar); stdcall; TFarStdLocalStrICmp = function( s1: PChar; s2: PChar): integer; stdcall; TFarStdLocalStrNICmp = function( s1: PChar; s2: PChar; n: integer): integer; stdcall; TFarStdUnquote = procedure( Str: PChar); stdcall; TFarStdExpandEnvironmentStr = function( Src: PChar; Dst: PChar; Size: DWORD): DWORD; stdcall; TFarStdLTrim = function( Str: PChar): PChar; stdcall; TFarStdRTrim = function( Str: PChar): PChar; stdcall; TFarStdTrim = function( Str: PChar): PChar; stdcall; TFarStdTruncStr = function( Str: PChar; MaxLength: integer): PChar; stdcall; TFarStdTruncPathStr = function( Str: PChar; MaxLength: integer): PChar; stdcall; TFarStdQuoteSpaceOnly = function( Str: PChar): PChar; stdcall; TFarStdPointToName = function( Path: PChar): PChar; stdcall; TFarStdGetPathRoot = procedure( Path: PChar; Root: PChar); stdcall; TFarStdAddEndSlash = function( Path: PChar): integer; stdcall; TFarStdCopyToClipboard = function( Data: PChar): integer; stdcall; TFarStdPasteFromClipboard = function: PChar; stdcall; TFarStdKeyToKeyName = function( Key: integer; KeyName: PChar; Size: integer): BOOL; stdcall; TFarStdKeyNameToKey = function( Name: PChar): integer; stdcall; TFarStdInputRecordToKey = function( var R: INPUT_RECORD): integer; stdcall; TFarStdXLAT = function( Line: PChar; StartPos: integer; EndPos: integer; TableSet: PCharTableSet; Flags: DWORD): PChar; stdcall; TFarStdGetFileOwner = function( Computer: PChar; Name: PChar; Owner: PChar): integer; stdcall; TFarStdGetNumberOfLinks = function( Name: PChar): integer; stdcall; TFRSFunction = function( var FindData: TWin32FindDataEx; FullName: PChar): integer; stdcall; TFarRecursiveSearch = procedure( InitDir: PChar; Mask: PChar; Func: TFRSFunction; Flags: DWORD); stdcall; TFarStdMkTemp = function( Dest: PChar; Template: PChar): PChar; stdcall; TFarStdDeleteBuffer = procedure( Buffer: PChar); stdcall; TFarStdProcessName = function( Param1: PChar; Param2: PChar; Flags: DWORD): integer; TFarStdMkLink = function( const Src: PChar; const Dest: PChar; Flags: DWORD): integer; TFarStdConvertNameToReal = function( const Src: PChar; Dest: PChar; DestSize: integer): integer; TFarStdGetReparsePointInfo = function( const Src: PChar; Dest: PChar; DestSize: integer): integer;