读书人

用GetTempPath获取途径

发布时间: 2012-11-03 10:57:44 作者: rapoo

用GetTempPath获取路径
用GetTempPath获取路径
获取出来是这样的C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\
我想得到这样的
C:\Documents and Settings\Administrator\Local Settings\Temp
如何转换呢

[解决办法]
GetFullPathName
[解决办法]
好像没有短文件名转长文件名的函数吧。。
[解决办法]
需要引用ShlObj,代码如下

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);var  sFolder: IShellFolder;  pIDList: PITEMIDLIST;  fullPath: WideString;  Len: integer;  buffer: array [0 .. MAX_PATH] of Char;  pchEaten, Attributes: ULONG;begin  Len := GetTempPathW(0, nil);  SetLength(fullPath, Len);  GetTempPathW(Len, @fullPath[1]);  SHGetDesktopFolder(sFolder);  sFolder.ParseDisplayName(0, nil, @fullPath[1], pchEaten, pIDList, Attributes);  SHGetPathFromIDList(pIDList, buffer);  ShowMessage(buffer);end; 

读书人网 >.NET

热点推荐