Hi, ich hänge gerade mit "GetProfilesDirectory" aus dem
http://windowssdk.msdn.microsoft.com.../ms713356.aspx
Ich bekam als Vorschlag:
function GetProfilesDirectory;external 'userenv.dll' name 'GetProfilesDirectoryA';
Das funktioniert natürlich nicht. Ich habe es geändert:
function GetProfilesDirectory(lpProfilesDir
Char; var lpcchSize
WORD):bool;external 'userenv.dll' name 'GetProfilesDirectoryA';
So wird es anstandslos compiliert. Wahrscheinlich muss noch ein stdcall rein. Aber das hilft auch nicht weiter.
Der Code dazu:
Delphi-Quellcode:
function LeseBenutzerProfilVerzeichnis:string;
var
len : DWORD;
b:string;
begin
len := 264;
SetLength(result, len);
if not GetProfilesDirectory(PChar(b), len) then
RaiseLastWin32Error;
SetLength(Result, len);
end;
wobei ich b eingesetzt habe, weil benutzerprofilverz in
if not GetProfilesDirectory(PChar(benutzerprofilverz), len) then
nicht declariert wurde.
Der Aufruf ShowMessage(LeseBenutzerProfilVerzeichnis) bringt nur Exceptions. Ich habe schon einiges ausprobiert, ich komme aber keinen Schritt weiter, obwohl ich der Lösung so nah bin.
Dann wäre aus der Notlösung des Thread
Linkeine Lösung geworden.