论坛风格切换切换到宽版
  • 598阅读
  • 1回复

获取特殊文件夹代码 [复制链接]

上一主题 下一主题
 
只看楼主 正序阅读 使用道具 楼主  发表于: 2009-03-12
— 本帖被 chickd2s 执行加亮操作(2009-03-12) —
  1. uses
  2. SHFolder;
  3. {
  4. Const CSIDL_ADMINTOOLS As Long = &H30 '(用户)\开始菜单\程序\系统管理工具
  5. Const CSIDL_ALTSTARTUP As Long = &H1D '未本地化的启动
  6. Const CSIDL_APPDATA As Long = &H1A '(用户)\应用程序的数据
  7. Const CSIDL_BITBUCKET As Long = &HA '(桌面)\回收站
  8. Const CSIDL_CONTROLS As Long = &H3 '我的电脑\控制面板
  9. Const CSIDL_COOKIES As Long = &H21
  10. Const CSIDL_DESKTOP As Long = &H0 '桌面
  11. Const CSIDL_DESKTOPDIRECTORY As Long = &H10 '(用户)\桌面
  12. Const CSIDL_FAVORITES As Long = &H6 '(用户)\个性化设置
  13. Const CSIDL_FONTS As Long = &H14 'windows\字体
  14. Const CSIDL_HISTORY As Long = &H22
  15. Const CSIDL_INTERNET As Long = &H1 'IE(桌面上的图标
  16. Const CSIDL_INTERNET_CACHE As Long = &H20 '因特网缓存文件夹
  17. Const CSIDL_LOCAL_APPDATA As Long = &H1C '(用户)\本地设置\应用程序数据
  18. Const CSIDL_DRIVES As Long = &H11 '我的电脑
  19. Const CSIDL_MYPICTURES As Long = &H27 'C:\Program Files\My Pictures
  20. Const CSIDL_NETHOOD As Long = &H13 '(用户)\网上邻居中的元素
  21. Const CSIDL_NETWORK As Long = &H12 '网上邻居
  22. Const CSIDL_PRINTERS As Long = &H4 '我的电脑\打印机
  23. Const CSIDL_PRINTHOOD As Long = &H1B '(用户)\打印机连接
  24. Const CSIDL_PERSONAL As Long = &H5 '我的文档
  25. Const CSIDL_PROGRAM_FILES As Long = &H26 'C:\Program Files
  26. Const CSIDL_PROGRAM_FILESX86 As Long = &H2A 'x86 apps (Alpha)的程序文件目录
  27. Const CSIDL_PROGRAMS As Long = &H2 '开始菜单\程序
  28. Const CSIDL_PROGRAM_FILES_COMMON As Long = &H2B 'Program Files\Common
  29. Const CSIDL_PROGRAM_FILES_COMMONX86 As Long = &H2C 'RISC上的x86 \Program Files\Common
  30. Const CSIDL_RECENT As Long = &H8 '(用户)\最近记录目录
  31. Const CSIDL_SENDTO As Long = &H9 '(用户)\发送到目录
  32. Const CSIDL_STARTMENU As Long = &HB '(用户)\开始菜单
  33. Const CSIDL_STARTUP As Long = &H7 '开始菜单\程序\启动
  34. Const CSIDL_SYSTEM As Long = &H25 'system文件夹
  35. Const CSIDL_SYSTEMX86 As Long = &H29 'x86 apps (Alpha)的system文件夹
  36. Const CSIDL_TEMPLATES As Long = &H15
  37. Const CSIDL_PROFILE As Long = &H28 '用户概貌文件夹
  38. Const CSIDL_WINDOWS As Long = &H24 'Windows目录或SYSROOT()
  39. Const CSIDL_COMMON_ADMINTOOLS As Long = &H2F '(所有用户)\开始菜单\程序\系统管理工具
  40. Const CSIDL_COMMON_ALTSTARTUP As Long = &H1E '未本地化的通用启动
  41. Const CSIDL_COMMON_APPDATA As Long = &H23 '(所有用户)\应用程序数据
  42. Const CSIDL_COMMON_DESKTOPDIRECTORY As Long = &H19 '(所有用户)\桌面
  43. Const CSIDL_COMMON_DOCUMENTS As Long = &H2E '(所有用户)\文档
  44. Const CSIDL_COMMON_FAVORITES As Long = &H1F '(所有用户)\设置
  45. Const CSIDL_COMMON_PROGRAMS As Long = &H17 '(所有用户)\程序
  46. Const CSIDL_COMMON_STARTMENU As Long = &H16 '(所有用户)\开始菜单
  47. Const CSIDL_COMMON_STARTUP As Long = &H18 '(所有用户)\启动
  48. Const CSIDL_COMMON_TEMPLATES As Long = &H2D '(所有用户)\临时
  49. }
  50. function GetFolder(csidl:integer;ForceFolder:Boolean=False):String;
  51. var
  52. i:integer;
  53. begin
  54. SetLength(Result,MAX_PATH);
  55. if ForceFolder then
  56. SHGetFolderPath(0,csidl or CSIDL_FLAG_CREATE, 0, 0, PChar(Result))
  57. else
  58. SHGetFolderPath(0, csidl, 0, 0, Pchar(result));
  59. i:=pos(#0,Result);
  60. if i>0 then
  61. SetLength(Result, Pred(i));
  62. end;
|tAkv  

只看该作者 沙发  发表于: 2009-03-12
有什么用处啊
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个