Delphi Tips 
-----------------------------

0052  D1   D2   D3   D4   D5   D6   D7   3.1   95   98    作成: 1999/02/08 osamu rev 1.1
   B1   B3   B4   B5   B6   B7   NT3   NT4   2K   XP  更新: 1999/02/08 osamu 編集
デスクトップフォルダのパスを得る

uses Shellapi, ShlObj, ActiveX, ComObj;

function GetDesktop: string;
var pidl: PItemIDList;
    buf : array [0..MAX_PATH] of Char;
    m   : IMalloc;
const DesktopID = CSIDL_DESKTOPDIRECTORY;
begin
  OleCheck(CoGetMalloc(1, m));
  OleCheck(SHGetSpecialFolderLocation(0, DesktopID, pidl));
  try
    Assert(SHGetPathFromIDList(pidl, buf));
    Result := buf;
  finally
    m.Free(pidl);
  end;
end;

ネットワークコンピュータ、マイコンピュータは仮想フォルダなので
パスは有りません。マイコンピュータの定義は CSIDL_DRIVES です。
参照: [Delphi-ML:19392] <Windows>

[新規作成] [最新の情報に更新]

How To
Lounge
KeyWords


Tips
Delphi
Home
Osamu Takeuchi osamu@big.or.jp