こんにちは、私はWindows8でXE3と一緒にdelphiFM2を使用しています。
問題は、ユーザーがボタンを押してから、appdataexにあるサブフォルダーに移動することです。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 \'
ありがとう。