Zitat von
Daniel:
... und für den Code dazu die Suche der
DP.
Irgendwas mit "Special", "Folder" und "Location", wenn ich nicht irre.
Wenn für den Desktop-Ordner der Code nicht vorhanden ist
Delphi-Quellcode:
uses
ShlObj;
function GetShellFolder(CSIDL: integer): String;
var
pidl : PItemIdList;
FolderPath : string;
SystemFolder : Integer;
begin
SystemFolder := CSIDL;
if SUCCEEDED(SHGetSpecialFolderLocation(0, SystemFolder, pidl)) then
begin
SetLength(FolderPath, max_path);
if SHGetPathFromIDList(pidl, PChar(FolderPath)) then
begin
SetLength(FolderPath, strlen(PChar(FolderPath)));
end;
end;
Result := FolderPath;
end;
Als CSIDL einfach
CSIDL_DESKTOPDIRECTORY.
Aber das ist hier nicht das entscheidende Thema.
Als erstes solltest Du dir noch einmal Gedanken darüber machen wie Du die Adressdaten speichern möchtest. Wenn ich das richtig sehe versuchst Du für jeden Adresseintrag einen Datei zu erzeugen welche diese Namen hat: "Name Vorname.Txt".
In deiner "Index-Datei" speicherst Du dan alle Dateinamen welche Du erzeugt hast?
Was machst Du denn wenn zwei Menschen den selben Vor- und Nachnamen haben? Ja, das soll es geben
Auch wenn es sich jetzt hart anhört (ist aber nicht so gemeint) ->
Überlege Dir erst eine vernünftige Art die Daten zu speichern. Ich weiss; Du hast dir sicher Überlegt wie man es am einfachsten machen kann und bist auf diese Lösung gestossen. Aber 99% deiner Aufgabe als "Programmierer" besteht darin dir ein Konzept zu überlegen.
Dies ist die wichtigste Arbeit. Das ganze dann in eine beliebige Sprache zu qutschen kann jeder der tippen kann
P.S.: Und Du solltest die Antworten hier im Forum genauer lesen. Auf die Problematik "Dateiname ohne Pfadangabe" habe ich schon um 17 Uhr ausführlich hingewiesen.
Wenn Du die Ratschläge die Du bekommst nämlich nicht annimmst kann es dir passieren das irgendwann keiner mehr Lust hat dir etwas zu erklären.
Stephan B.
"Lasst den Gänsen ihre Füßchen"