如:程序文件夹,系统文件夹,临时文件夹,还有system32等文件夹的位置

解决方案 »

  1.   

    uses
      ShlObj, ActiveX, ComObj;function GetSpecialFolderDir(mFolder: Integer): string;
    { 返回获取系统文件或系统目录 }
    (*
        CSIDL_BITBUCKET         *   回收站
        CSIDL_CONTROLS          *   控制面板
        CSIDL_DESKTOP           *   桌面
        CSIDL_DESKTOPDIRECTORY      桌面目录       //如C:\WINDOWS\Desktop
        CSIDL_DRIVES            *   我的电脑
        CSIDL_FONTS                 字体           //如C:\WINDOWS\FONTS
        CSIDL_NETHOOD               网上邻居目录   //如C:\WINDOWS\NetHood
        CSIDL_NETWORK           *   网上邻居
        CSIDL_PERSONAL              我的文档       //如C:\My Documents
        CSIDL_PRINTERS          *   打印机
        CSIDL_PROGRAMS              程序组         //如C:\WINDOWS\Start Menu\Programs
        CSIDL_RECENT                最近文档       //如C:\WINDOWS\Recent
        CSIDL_SENDTO                发送到         //如C:\WINDOWS\SentTo
        CSIDL_STARTMENU             开始菜单       //如C:\WINDOWS\Start Menu
        CSIDL_STARTUP               启动           //如C:\WINDOWS\启动
        CSIDL_TEMPLATES             模版           //如C:\WINDOWS\ShellNew
    *)
    var
      vItemIDList: PItemIDList;
      vBuffer: array[0..MAX_PATH] of Char;
    begin
      SHGetSpecialFolderLocation(0, mFolder, vItemIDList);
      SHGetPathFromIDList(vItemIDList, vBuffer); //转换成文件系统的路径
      Result := vBuffer;
    end; { GetSpecialFolderDir }
      

  2.   

    zswang(伴水清清)(专家门诊清洁工):怎么没有程序文件夹呢就是program fiels
      

  3.   

    系统路径所在的盘符 + '\Program Fiels'