嗨,我在 Windows 8 中使用带有 XE3 的 delphi FM2。
我遇到的问题是我希望用户按下按钮,然后导航到位于 appdata ex 中的子文件夹。C:\Users\Kobus\AppData\Roaming.minecraft
每个人都有不同的用户名,所以这行不通。
所以我使用这段代码来获取用户名:
function GetCurrentUserName : string;
const
cnMaxUserNameLen = 254;
var
sUserName : string;
dwUserNameLen : DWord;
begin
dwUserNameLen := cnMaxUserNameLen-1;
SetLength( sUserName, cnMaxUserNameLen );
GetUserName(PChar( sUserName ),dwUserNameLen );
SetLength( sUserName, dwUserNameLen );
Result := sUserName;
end;
username := GetCurrentUserName;
然后我说ShowMessage('C:\Users\'+username+'\AppData\Roaming\.minecraft\saves\');
检查输出。
我得到的输出是:'C:\Users\Kobus' 由于某种原因,路径名的其余部分丢失了。
我需要显示的是:'C:\Users\'Kobus'\AppData\Roaming.minecraft\saves\'
谢谢。