獲取桌面路徑

Function SHGetSpecialFolderLocation(hwndOwner: HWND; nFolder: Integer;
 var ppidl: PItemIDList): HResult; stdcall;

      Function SHGetPathFromIDList(pidl: PItemIDList; pszPath: PChar):                BOOL;stdcall;

      其中由nFolder參數指定的就是各個特殊系統目錄:

      CSIDL_DESKTOP:毫無疑問這就是桌面;

      CSIDL_DRIVERS:個人電腦;

      CSIDL_FAVORITES:收藏夾;

      CSIDL_STARTUP:開始菜單;

      CSIDL_NETWORK:網上鄰居;

       還有不少,你能夠查閱一下Delphi的Win32 Api函數的幫助文件,不過在幫助文件下的這些參數也不是很全,像收藏夾幫助文件裏面就沒有,你能夠查閱一下它的頭文件:shlobj.pas。

      下面我就利用這兩個函數取得桌面的路徑(在win98和win2000下均可以使用):

       uses shlobj;

       var
         pitem:PITEMIDLIST;
         s:string;
       begin
          shGetSpecialFolderLocation(handle,CSIDL_DESKTOP,pitem);
         setlength(s,100);
          shGetPathFromIDList(pitem,pchar(s));
       end;

        在字符串s中存儲的就是桌面的路徑值。
相關文章
相關標籤/搜索