rt
解决方案 »
- 请教带附件soap协议传输代码实现 Delphi
- 怎么样将数组中的内容赋给checklistbox
- 寻求一INI加密算法
- 有懂NOVELL的吗??请问在NOVELL中提示这个问题应该怎么解决?大家帮下忙,CSDN中好象没有NOVELL专区啊!
- 请EXIA老大进来领分!
- 一个很不错的学习资料网站,有很多教学视频资料下载,晚了就没了.
- 字符指针指向一个字符串后 指针怎么向后移!
- 有关 RemoteObjects的问题
- 超简单问题,HDC(设备描述表句柄)指的是什么?和HWnd有什么区别?
- 浏览器静音技术,希望有条件的朋友帮忙测试一下
- delphi对access数据操作,like in()出错!!
- 任务栏隐藏窗口图标
function GetSpecialFolderDir:string;
const
dirName : Array[0..33] of String=
('桌面 ','INTERNET ','程序组 ','控制面板 ',
'打印机 ','我的文档 ','收藏夹 ','启动组 ',
'最近文档 ','发送到 ','回收站 ','开始菜单 ',
'','','','',
'桌面目录 ','我的电脑 ','网络 ','网上邻居目录 ',
'字体 ','模板 ','*开始菜单 ','*程序组 ',
'*启动组 ','*桌面目录 ','应用程序数据 ','PRINTHOOD ',
'ALTSTARTUP ','C_ALTSTARTUP ','C_FAVORITES ','Internet缓冲目录 ',
'COOKIES ','历史记录 ');
var
pidl:pItemIDList;
buffer:array [ 0..255 ] of char ;
i: Integer;
tmp: String;
begin
Result:='特殊文件夹路径:'+chr(13)+chr(10);
for i:=0 to 29 do
begin
SHGetSpecialFolderLocation(Application.Handle , i, pidl);
SHGetPathFromIDList(pidl, buffer); //转换成文件系统的路径
tmp:=StrPas(buffer);
if <>'' then
Result:=Result+ DirName[i]+ tmp + Chr(13)+chr(10);
end;
end;其实 i 的值可以是以下常量,在shlobj中有定义,根据它的名称可知道代表什么:
CSIDL_BITBUCKET
CSIDL_CONTROLS
CSIDL_DESKTOP
CSIDL_DESKTOPDIRECTORY
CSIDL_DRIVES
CSIDL_FONTS
CSIDL_NETHOOD
CSIDL_NETWORK
CSIDL_PERSONAL
CSIDL_PRINTERS
CSIDL_PROGRAMS
CSIDL_RECENT
CSIDL_SENDTO
CSIDL_STARTMENU
CSIDL_STARTUP
CSIDL_TEMPLATES
....