Delphi6函数大全5-SysUtils.pas

发布时间:2024年01月02日
Delphi6函数大全5-SysUtils.pas

首部? ?? ?function InquireSignal(RtlSigNum: Integer): TSignalState;? ?? ?$[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?AbandonSignalHandler(RtlSigNum: Integer); $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?HookSignal(RtlSigNum: Integer); $[SysUtils.pas
功能 <NULL>
说明? ?? ?Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?UnhookSignal(RtlSigNum: Integer; OnlyIfHooked: Boolean = True);? ?? ?$[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure HookOSExceptions;? ?? ?$[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function MapSignal(SigNum:? ?? ?Integer; Context: PSigContext): LongWord; $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?SignalConverter(ExceptionEIP: LongWord; FaultAddr: LongWord; ErrorCode:? ?? ?LongWord); $[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考? ?? ?<NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?SetSafeCallExceptionMsg(Msg: String); $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?SetSafeCallExceptionAddr(Addr: Pointer); $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?GetSafeCallExceptionMsg: String; $[SysUtils.pas
功能 <NULL>
说明? ?? ?Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?GetSafeCallExceptionAddr: Pointer; $[SysUtils.pas
功能 <NULL>
说明? ?? ?Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?LoadLibrary(ModuleName: PChar): HMODULE; $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function FreeLibrary(Module:? ?? ?HMODULE): LongBool; $[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考? ?? ?<NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?GetProcAddress(Module: HMODULE; Proc: PChar): Pointer;? ?? ?$[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?GetModuleHandle(ModuleName: PChar): HMODULE; $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?GetPackageModuleHandle(PackageName: PChar): HMODULE; $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure Sleep(milliseconds:? ?? ?Cardinal);{$IFDEF MSWINDOWS} stdcall; {$ENDIF} $[SysUtils.pas
功能? ?? ?让程序休眠一段时间
说明 以微米为单位
参考 <NULL>
例子? ?? ?Sleep(3000);
━━━━━━━━━━━━━━━━━━━━━
首部 function GetModuleName(Module:? ?? ?HMODULE): string; $[SysUtils.pas
功能 返回动态连接库的名称
说明? ?? ?如果参数为0则返回当前程序的名称
参考 function? ?? ?Windows.GetModuleFileName
例子
///Begin GetModuleName
procedure? ?? ?TForm1.Button1Click(Sender: TObject);
var
vHandle:? ?? ?THandle;
begin
vHandle := LoadLibrary(PChar(Edit1.Text));
Caption? ?? ?:= GetModuleName(vHandle);
FreeLibrary(vHandle);
end;
///End? ?? ?GetModuleName
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?ExceptionErrorMessage(ExceptObject: TObject; ExceptAddr: Pointer; Buffer:? ?? ?PChar; Size: Integer): Integer; $[SysUtils.pas
功能 返回操作指针失败的信息长度
说明? ?? ?信息放在缓冲Buffer中
参考 function Windows.VirtualQuery;function? ?? ?Windows.GetModuleFilename
例子
///Begin? ?? ?ExceptionErrorMessage
procedure TForm1.Button1Click(Sender:? ?? ?TObject);
var
vBuffer: array[0..255] of? ?? ?Char;
begin
ExceptionErrorMessage(Self, Self, vBuffer,? ?? ?255);
Caption := vBuffer;
end;
///End? ?? ?ExceptionErrorMessage
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?ShowException(ExceptObject: TObject; ExceptAddr: Pointer);? ?? ?$[SysUtils.pas
功能 提示一个操作指针失败的错误
说明 支持控制台程序
参考 function? ?? ?SysUtils.ExceptionErrorMessage;var System.IsConsole;function? ?? ?System.FindResourceHInstance
例子 ShowException(Self,? ?? ?Self);
━━━━━━━━━━━━━━━━━━━━━
首部 procedure Abort;? ?? ?$[SysUtils.pas
功能 引起放弃的意外处理
说明 不显示任何错误信息
参考 type? ?? ?SysUtils.EAbort
例子 Abort;
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?OutOfMemoryError; $[SysUtils.pas
功能 触发内存益出异常
说明 <NULL>
参考? ?? ?var SysUtils.OutOfMemory
例子 OutOfMemoryError;
━━━━━━━━━━━━━━━━━━━━━? ?? ?
首部 procedure Beep; $[SysUtils.pas
功能 触发计算机出声
说明? ?? ?MessageBeep(0);
参考 function Windows.MessageBeep
例子? ?? ?Beep;
━━━━━━━━━━━━━━━━━━━━━
首部 function ByteType(const S: string;? ?? ?Index: Integer): TMbcsByteType; $[SysUtils.pas
功能? ?? ?返回字符串S位置Index上的字符在MBCS中类型
说明 多字节字符系统:Multi-Byte Character System? ?? ?(MBCS)
参考 var SysUtils.SysLocale
例子 SpinEdit1.Value :=? ?? ?Ord(ByteType(Edit1.Text, SpinEdit2.Value));
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function StrByteType(Str: PChar; Index: Cardinal): TMbcsByteType;? ?? ?$[SysUtils.pas
功能 返回指针字符串Str位置Index上的字符在MBCS中类型
说明 Index从0开始
参考? ?? ?var SysUtils.SysLocale
例子 SpinEdit1.Value :=? ?? ?Ord(StrByteType(PChar(Edit1.Text),? ?? ?SpinEdit2.Value));
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?ByteToCharLen(const S: string; MaxLen: Integer): Integer;? ?? ?$[SysUtils.pas
功能 返回字符串S中有多少个多字节字符
说明 MaxLen指定处理字符个数
参考 function? ?? ?SysUtils.ByteToCharIndex
例子 SpinEdit1.Value :=? ?? ?ByteToCharLen(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function CharToByteLen(const S: string; MaxLen: Integer): Integer;? ?? ?$[SysUtils.pas
功能 返回字符串S中有多少个字符
说明 MaxLen指定处理多字节字符个数
参考 var? ?? ?SysUtils.SysLocale
例子 SpinEdit1.Value := CharToByteLen(Edit1.Text,? ?? ?SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?ByteToCharIndex(const S: string; Index: Integer): Integer;? ?? ?$[SysUtils.pas
功能 返回字符位置对应的多字节字符位置
说明 ByteToCharIndex('你好', 2) =? ?? ?1;ByteToCharIndex('你好', 3) = 2
参考 function SysUtils.NextCharIndex
例子? ?? ?SpinEdit1.Value := ByteToCharIndex(Edit1.Text,? ?? ?SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?CharToByteIndex(const S: string; Index: Integer): Integer;? ?? ?$[SysUtils.pas
功能 返回多字节字符位置对应的字符起始位置
说明 CharToByteIndex('你好', 1) =? ?? ?1;CharToByteIndex('你好', 2) = 3
参考 function System.Length
例子? ?? ?SpinEdit1.Value := CharToByteIndex(Edit1.Text,? ?? ?SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?StrCharLength(const Str: PChar): Integer; $[SysUtils.pas
功能? ?? ?返回第一个字符的宽度
说明 参数为空则返回0
参考 function Windows.CharNext
例子? ?? ?SpinEdit1.Value :=? ?? ?StrCharLength(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?StrNextChar(const Str: PChar): PChar; $[SysUtils.pas
功能? ?? ?返回字符指针Str的下一个字符指针
说明 StrNextChar('1234') = '234';
参考 function? ?? ?Windows.CharNext
例子 Edit2.Text :=? ?? ?StrNextChar(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?CharLength(const S: String; Index: Integer): Integer; $[SysUtils.pas
功能? ?? ?返回字符串中指定位置的字符宽度
说明 CharLength('English汉', 1) = 1;CharLength('English汉',? ?? ?8) = 2
参考 function System.Assert;function SysUtils.StrCharLength
例子? ?? ?SpinEdit1.Value := CharLength(Edit1.Text,? ?? ?SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?NextCharIndex(const S: String; Index: Integer): Integer;? ?? ?$[SysUtils.pas
功能 返回下一个字符的位置
说明 CharLength('你好', 1) =? ?? ?3;CharLength('你好', 3) = 5
参考 function System.Assert;function? ?? ?SysUtils.StrCharLength
例子 SpinEdit1.Value := NextCharIndex(Edit1.Text,? ?? ?SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?IsPathDelimiter(const S: string; Index: Integer): Boolean;? ?? ?$[SysUtils.pas
功能 返回字符串S中指定位置Index上是否是一个路径分隔符
说明? ?? ?IsPathDelimiter('C:\Windows', 3) = True
参考 const? ?? ?SysUtils.PathDelim;function SysUtils.ByteType
例子 CheckBox1.Checked :=? ?? ?IsPathDelimiter(Edit1.Text,? ?? ?SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?IsDelimiter(const Delimiters, S: string; Index: Integer): Boolean;? ?? ?$[SysUtils.pas
功能 返回字符串S中指定位置Index上是否是一个分隔符Delimiters
说明? ?? ?IsDelimiter('@', 'wjhu111@21cn.com', 8) = True
参考 function? ?? ?SysUtils.ByteType
例子 CheckBox1.Checked := IsDelimiter(Edit1.Text,? ?? ?Edit2.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?IncludeTrailingPathDelimiter(const S: string): string;? ?? ?$[SysUtils.pas
功能 返回包括最后路径分隔符
说明 最后一个字符是路径分隔符则不变;否则加上一个路径分隔符返回
参考? ?? ?function SysUtils.IsPathDelimiter;function System.Length
例子 Edit1.Text? ?? ?:=? ?? ?IncludeTrailingPathDelimiter(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function IncludeTrailingBackslash(const S: string): string; platform;? ?? ?$[SysUtils.pas
功能 返回包括最后斜线
说明 Result :=? ?? ?IncludeTrailingPathDelimiter(S);
参考 function? ?? ?SysUtils.IncludeTrailingPathDelimiter
例子 Edit1.Text :=? ?? ?IncludeTrailingBackslash(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function ExcludeTrailingPathDelimiter(const S: string): string;? ?? ?$[SysUtils.pas
功能 返回排除最后路径分隔符
说明? ?? ?最后一个字符不是路径分隔符则不变;否则减去最后的路径分隔符返回
参考 function? ?? ?SysUtils.IsPathDelimiter;function System.Length;function? ?? ?System.SetLength
例子 Edit1.Text :=? ?? ?ExcludeTrailingPathDelimiter(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function ExcludeTrailingBackslash(const S: string): string; platform;? ?? ?$[SysUtils.pas
功能 返回排除最后斜线
说明 Result :=? ?? ?ExcludeTrailingPathDelimiter(S)
参考 function? ?? ?SysUtils.ExcludeTrailingPathDelimiter
例子 Edit1.Text :=? ?? ?ExcludeTrailingBackslash(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function LastDelimiter(const Delimiters, S: string): Integer;? ?? ?$[SysUtils.pas
功能 返回最后一个分隔符的位置
说明 LastDelimiter('.',? ?? ?'kingron.myetang.com') = 16
参考 function SysUtils.StrScan;function? ?? ?SysUtils.ByteType
例子 SpinEdit1.Value := LastDelimiter(Edit1.Text,? ?? ?Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?AnsiCompareFileName(const S1, S2: string): Integer; $[SysUtils.pas
功能? ?? ?返回比较两个文件名
说明? ?? ?当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写
参考 function? ?? ?SysUtils.AnsiCompareStr
例子 SpinEdit1.Value :=? ?? ?AnsiCompareFileName(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━? ?? ?
首部 function SameFileName(const S1, S2: string): Boolean;? ?? ?$[SysUtils.pas
功能 返回两个文件名是否相等
说明 区分大小写
参考 function? ?? ?SysUtils.AnsiCompareFileName
例子 CheckBox1.Checked :=? ?? ?SameFileName(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function AnsiLowerCaseFileName(const S: string): string;? ?? ?$[SysUtils.pas
功能 返回小写文件名
说明 在非多字节字符系统上相当于AnsiLowerCase
参考? ?? ?function SysUtils.AnsiLowerCase
例子 Edit2.Text :=? ?? ?AnsiLowerCaseFileName(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?AnsiUpperCaseFileName(const S: string): string; $[SysUtils.pas
功能? ?? ?返回大写文件名
说明 在非多字节字符系统上相当于AnsiUpperCase
参考 function? ?? ?SysUtils.AnsiUpperCase
例子 Edit2.Text :=? ?? ?AnsiUpperCaseFileName(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function AnsiPos(const Substr, S: string): Integer; $[SysUtils.pas
功能? ?? ?返回子串Substr在字符中第一次出现的位置
说明 不存在则返回0
参考 SysUtils.AnsiStrPos
例子? ?? ?SpinEdit1.Value := AnsiPos(Edit1.Text,? ?? ?Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrPos(Str,? ?? ?SubStr: PChar): PChar; $[SysUtils.pas
功能? ?? ?返回指针子串Substr在指针字符中第一次出现的指针位置
说明 不存在则返回nil
参考 function? ?? ?SysUtils.StrByteType
例子 Edit3.Text := AnsiStrPos(PChar(Edit1.Text),? ?? ?PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?AnsiStrRScan(Str: PChar; Chr: Char): PChar; $[SysUtils.pas
功能? ?? ?返回在指针字符串Str搜索字符Chr最后一个出现的地址
说明? ?? ?支持多字节字符系统;AnsiStrRScan('kingron.myetang.com', '.') = '.com'
参考 function? ?? ?SysUtils.AnsiStrScan
例子 Edit2.Text := AnsiStrScan(PChar(Edit1.Text),? ?? ?'.');
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrScan(Str: PChar; Chr:? ?? ?Char): PChar; $[SysUtils.pas
功能 返回在指针字符串Str搜索字符Chr第一个出现的地址
说明? ?? ?支持多字节字符系统;AnsiStrRScan('kingron.myetang.com', '.') = '.myetang.com'
参考? ?? ?function SysUtils.StrScan
例子 Edit2.Text :=? ?? ?AnsiStrScan(PChar(Edit1.Text), '.');
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function StringReplace(const S, OldPattern, NewPattern: string; Flags:? ?? ?TReplaceFlags): string; $[SysUtils.pas
功能 返回替换后的字符串
说明? ?? ?rfReplaceAll为替换全部内容;rfIgnoreCase为忽略大小写
参考 function? ?? ?SysUtils.AnsiUpperCase;function SysUtils.AnsiPos;function? ?? ?System.Copy
例子
///Begin StringReplace
procedure? ?? ?TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Values['[]']? ?? ?:=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text,? ?? ?[]);
Memo1.Lines.Values['[rfReplaceAll]']? ?? ?:=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text,? ?? ?[rfReplaceAll]);
Memo1.Lines.Values['[rfIgnoreCase]']? ?? ?:=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text,? ?? ?[rfIgnoreCase]);
Memo1.Lines.Values['[rfReplaceAll, rfIgnoreCase]']? ?? ?:=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, [rfReplaceAll,? ?? ?rfIgnoreCase]);
end;
///End? ?? ?StringReplace
━━━━━━━━━━━━━━━━━━━━━
首部 function WrapText(const Line,? ?? ?BreakStr: string; const BreakChars: TSysCharSet; MaxCol: Integer): string;? ?? ?overload; $[SysUtils.pas
首部 function WrapText(const Line: string;? ?? ?MaxCol: Integer = 45): string; overload; $[SysUtils.pas
功能? ?? ?返回对字符串自动换行
说明 Result := WrapText(Line, sLineBreak, [' ', '-', #9],? ?? ?MaxCol);
参考 function SysUtils.CharLength;function? ?? ?SysUtils.CompareText
例子 Memo1.Text := WrapText(Memo2.Text,? ?? ?SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?FindCmdLineSwitch(const Switch: string; const Chars: TSysCharSet;? ?? ?IgnoreCase: Boolean): Boolean; overload; $[SysUtils.pas
首部 function? ?? ?FindCmdLineSwitch(const Switch: string): Boolean; overload;? ?? ?$[SysUtils.pas
首部 function FindCmdLineSwitch(const Switch: string;? ?? ?IgnoreCase: Boolean): Boolean; overload; $[SysUtils.pas
功能? ?? ?返回程序命令参数是否找到
说明 Result := FindCmdLineSwitch(Switch, SwitchChars,? ?? ?True);
参考 function System.ParamCount;function System.ParamStr;function? ?? ?SysUtils.AnsiCompareText
例子 CheckBox1.Checked :=? ?? ?FindCmdLineSwitch(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?FreeAndNil(var Obj); $[SysUtils.pas
功能 释放对象Obj并赋为空
说明? ?? ?如果对象已经释放资源将触发异常
参考 type System.TObject
例子
///Begin? ?? ?FreeAndNil
procedure TForm1.Button1Click(Sender:? ?? ?TObject);
var
Temp: TObject;
begin
Temp :=? ?? ?TObject.Create;
Temp.Free;
ShowMessage(Format('%p',? ?? ?[Pointer(Temp)]));

Temp :=? ?? ?TObject.Create;
FreeAndNil(Temp);
ShowMessage(Format('%p',? ?? ?[Pointer(Temp)]));
end;
///End? ?? ?FreeAndNil
━━━━━━━━━━━━━━━━━━━━━
首部 function Supports(const? ?? ?Instance: IInterface; const IID: TGUID; out Intf): Boolean; overload;? ?? ?$[SysUtils.pas
首部 function Supports(const Instance: TObject; const IID:? ?? ?TGUID; out Intf): Boolean; overload; $[SysUtils.pas
首部 function? ?? ?Supports(const Instance: IInterface; const IID: TGUID): Boolean; overload;? ?? ?$[SysUtils.pas
首部 function Supports(const Instance: TObject; const IID:? ?? ?TGUID): Boolean; overload; $[SysUtils.pas
首部 function Supports(const? ?? ?AClass: TClass; const IID: TGUID): Boolean; overload; $[SysUtils.pas
功能? ?? ?返回对象是否支持指定的接口
说明 Result := AClass.GetInterfaceEntry(IID) <>? ?? ?nil;
参考 type System.TObject
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━? ?? ?
首部 function CreateGUID(out Guid: TGUID): HResult; $[SysUtils.pas
功能? ?? ?返回创建全局标识是否成功
说明 返回S_OK表示成功
参考 function? ?? ?Windows.CoCreateGuid
例子
///Begin CreateGUID
procedure? ?? ?TForm1.Button1Click(Sender: TObject);
var
vGUID:? ?? ?TGUID;
begin
CreateGUID(vGUID);
Edit1.Text :=? ?? ?GUIDToString(vGUID);
end;
///End? ?? ?CreateGUID
━━━━━━━━━━━━━━━━━━━━━
首部 function StringToGUID(const S:? ?? ?string): TGUID; $[SysUtils.pas
功能 返回字符串S转换成全局标识
说明? ?? ?如果字符串非法将触发异常
参考 fuction Windows.Succeeded
例子 Edit2.Text :=? ?? ?GUIDToString(StringToGUID(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function GUIDToString(const GUID: TGUID): string; $[SysUtils.pas
功能? ?? ?返回全局标识GUID转换成字符串
说明 <NULL>
参考 fuction Windows.Succeeded
例子? ?? ?Edit2.Text :=? ?? ?GUIDToString(StringToGUID(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function IsEqualGUID(const guid1, guid2: TGUID): Boolean;? ?? ?$[SysUtils.pas
功能 返回两个全局标识是否相同
说明 function IsEqualGUID; external? ?? ?'ole32.dll' name 'IsEqualGUID';
参考 <NULL>
例子 CheckBox1.Checked? ?? ?:= IsEqualGUID(StringToGUID(Edit1.Text),? ?? ?StringToGUID(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?LoadPackage(const Name: string): HMODULE; $[SysUtils.pas
功能? ?? ?返回载入包资源
说明 <NULL>
参考 function? ?? ?SysUtils.SafeLoadLibrary;function SysUtils.InitializePackage;function? ?? ?Windows.FreeLibrary
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?procedure UnloadPackage(Module: HMODULE); $[SysUtils.pas
功能? ?? ?取消载入包资源
说明 <NULL>
参考 function? ?? ?SysUtils.FinalizePackage;function Windows.FreeLibrary
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?GetPackageInfo(Module: HMODULE; Param: Pointer; var Flags: Integer;? ?? ?InfoProc: TPackageInfoProc); $[SysUtils.pas
功能 返回包的信息
说明? ?? ?<NULL>
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?GetPackageDescription(ModuleName: PChar): string; $[SysUtils.pas
功能? ?? ?返回包的描述
说明 <NULL>
参考 function? ?? ?System.LoadResourceModule;function Windows.LoadLibraryEx
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?InitializePackage(Module: HMODULE); $[SysUtils.pas
功能 初始化包
说明? ?? ?<NULL>
参考 function Windos.GetProcAddress
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?FinalizePackage(Module: HMODULE); $[SysUtils.pas
功能 终止化包
说明? ?? ?<NULL>
参考 function Windos.GetProcAddress
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure RaiseLastOSError;? ?? ?$[SysUtils.pas
功能 触发操作系统的最后一个异常
说明 如果没有出现异常则默认调用Api函数异常
参考? ?? ?function Windows.GetLastError
例子? ?? ?RaiseLastOSError;
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?RaiseLastWin32Error; deprecated; $[SysUtils.pas
功能? ?? ?触发Win32系统的最后一个异常
说明 如果没有出现异常则默认调用Api函数异常
参考 function? ?? ?SysUtils.RaiseLastOSError;
例子? ?? ?RaiseLastWin32Error;
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?Win32Check(RetVal: BOOL): BOOL; platform; $[SysUtils.pas
功能? ?? ?返回检测调用系统Api函数返回结果
说明 如果RetVal为False则触发异常
参考 function? ?? ?SysUtils.RaiseLastOSError
例子 CheckBox2.Checked :=? ?? ?Win32Check(CheckBox1.Checked);
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?AddTerminateProc(TermProc: TTerminateProc); $[SysUtils.pas
功能? ?? ?添加一个退出过程到系统中
说明 执行AddTerminateProc(nil)将导致系统异常
参考 const? ?? ?System.TerminateProcList
例子
///Begin? ?? ?AddTerminateProc
function NewTerminateProc: Boolean;
begin
Result? ?? ?:= True;
ShowMessage('NewTerminateProc');
end;

procedure? ?? ?TForm1.Button1Click(Sender:? ?? ?TObject);
begin
AddTerminateProc(NewTerminateProc);
end;
///End? ?? ?AddTerminateProc
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?CallTerminateProcs: Boolean; $[SysUtils.pas
功能 返回调用退出过程是否成功
说明? ?? ?不建议调用
参考 const System.TerminateProcList
例子? ?? ?CallTerminateProcs;
━━━━━━━━━━━━━━━━━━━━━
首部 function GDAL:? ?? ?LongWord; $[SysUtils.pas
功能 <NULL>
说明 <NULL>
参考? ?? ?<NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?RCS; $[SysUtils.pas
功能 <NULL>
说明 <NULL>
参考? ?? ?<NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure? ?? ?RPR; $[SysUtils.pas
功能 <NULL>
说明 <NULL>
参考? ?? ?<NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?SafeLoadLibrary(const Filename: string; ErrorMode: UINT =? ?? ?SEM_NOOPENFILEERRORBOX): HMODULE; $[SysUtils.pas
功能? ?? ?返回安全方式载入动态连接库资源
说明 <参见LoadLibrary>
参考 function? ?? ?Windows.LoadLibrary
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部? ?? ?function GetEnvironmentVariable(const Name: string): string; overload;? ?? ?$[SysUtils.pas
功能 返回过程环境变量
说明 配合SetEnvironmentVariable函数使用
参考? ?? ?function Windows.GetEnvironmentVariable
例子 Edit1.Text :=? ?? ?GetEnvironmentVariable(Edit2.Text);
///Begin? ?? ?GetEnvironmentVariable
procedure TForm1.Button1Click(Sender:? ?? ?TObject);
begin
SetEnvironmentVariable(PChar(Edit2.Text),? ?? ?PChar(Edit3.Text));
Edit1.Text :=? ?? ?GetEnvironmentVariable(Edit2.Text);
end;
///End? ?? ?GetEnvironmentVariable
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?InterlockedIncrement(var I: Integer): Integer; $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?InterlockedDecrement(var I: Integer): Integer; $[SysUtils.pas
功能? ?? ?<NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?InterlockedExchange(var A: Integer; B: Integer): Integer;? ?? ?$[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function? ?? ?InterlockedExchangeAdd(var A: Integer; B: Integer): Integer;? ?? ?$[SysUtils.pas
功能 <NULL>
说明 Kylix函数
参考 <NULL>
例子? ?? ?<NULL>
━━━━━━━━━━━━━━━━━━━━━
文章来源:https://blog.csdn.net/airen3339/article/details/135335468
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。