下列方法仅提供 Windows 平台使用,所以需要使用编译开关,代码如下:
<span style="color: #008000;">{
<span style="color: #008000;">$IFDEF MSWINDOWS<span style="color: #008000;">}<span style="color: #0000ff;">const CSIDL_DESKTOP = $<span style="color: #800080;">0000; <span style="color: #008000;">//<span style="color: #008000;">
<span style="color: #0000ff;">function GetDesktopPath: <span style="color: #0000ff;">string<span style="color: #000000;">;
<span style="color: #0000ff;">var<span style="color: #000000;">
LStr: <span style="color: #0000ff;">array[<span style="color: #800080;">0 .. MAX_PATH] <span style="color: #0000ff;">of<span style="color: #000000;"> Char;
<span style="color: #0000ff;">begin<span style="color: #000000;">
SetLastError(ERROR_SUCCESS);
<span style="color: #0000ff;">if SHGetFolderPath(<span style="color: #800080;">0,CSIDL_DESKTOP,<span style="color: #800080;">0,@LStr) = S_OK <span style="color: #0000ff;">then<span style="color: #000000;">
Result :=<span style="color: #000000;"> LStr;
<span style="color: #0000ff;">end<span style="color: #000000;">;
<span style="color: #008000;">{<span style="color: #008000;">$ENDIF<span style="color: #008000;">}