Forum: Win32/Win64 API (native code)
Delphi
by Dalai,
27. Jun 2015
Wirklich ein hilfreicher Beitrag ... echt, Ehrensache ... :roll:
Hättest du ein Problem und jemand würde dir mit einer solchen Antwort kommen, würde dir das helfen? Ich glaube kaum. Ich bin ja dankbar für Hilfe und ich hab auch nichts gegen Kommentare und Witze, aber keines davon vermag ich deinem Beitrag zu entnehmen.
Forum: Win32/Win64 API (native code)
Delphi
by Dalai,
27. Jun 2015
Tja, das Wesentliche war wohl doch zu stark reduziert...
Dem Nutzer wird die Möglichkeit gegeben, eine Kommandozeile zu editieren, unter anderem die von Verknüpfungen. Ob es da nun einen Dialog zur Auswahl einer Datei gibt oder nicht, spielt keine Rolle, weil der Nutzer trotzdem in der Eingabe frei ist und sein muss; ein Savedialog macht in dem Zusammenhang aber überhaupt keinen Sinn.
Diese...
Forum: Win32/Win64 API (native code)
Delphi
by Dalai,
27. Jun 2015
Nochmal: Es geht nicht darum, ob der Dateiname erfunden ist, sondern ob ein Algorithmus zuverlässig in der Lage wäre, den eingegebenen Dateinamen vor der Übergabe an SetPath zu finden und bei Nichtexistenz abzulehnen. Wenn du einen zuverlässigen Algo hast, der unter allen Umständen funktioniert, dann her damit. Dabei dürfen natürlich keine Kollateralschäden entstehen, d.h. eine existierende Datei...
Forum: Win32/Win64 API (native code)
Delphi
by Dalai,
27. Jun 2015
Die Verwendung von FileExists würde voraussetzen, dass die Datei IMMER zuverlässig gefunden wird, egal ob 32 oder 64 Bit System, egal ob WOW64, egal ob Umgebungsvariable oder sonstwas. Könntest du das mit einem Algorithmus garantieren? Ich nicht. Man kann mit PathFindOnPath und FileSearch eine ganz brauchbare Annäherung erreichen, aber eine hundertprozentige Garantie geben die auch nicht her....
Forum: Win32/Win64 API (native code)
Delphi
by Dalai,
27. Jun 2015
Und was genau davon soll mir helfen? Oder anders gefragt: Wo ist die Verbindung zu diesem Problem hier? :gruebel:
MfG Dalai
Forum: Win32/Win64 API (native code)
Delphi
by Dalai,
20. Jun 2015
Ach, noch eine Info: unter Win2k arbeitet die Funktion "normal", sie setzt allerdings dem Dateinamen den Pfad zum Desktop des aktuellen Nutzers voran, so dass dann im Beispiel C:\Dokumente und Einstellungen\Administrator\Desktop\blub.exerauskommt. Ab XP gibt es das E_INVALIDARG.
MfG Dalai
Forum: Win32/Win64 API (native code)
Delphi
by Dalai,
20. Jun 2015
Mein Code oben funktioniert auch mit calc.exe, das ist nicht das Problem. Dein Code verhält sich übrigens genauso. Einfach ein OleCheck um SetPath setzen und staunen (bei nicht existierenden Dateien) ;).
Es geht nur um nicht existierende Dateien. Klar, macht keinen Sinn, eine Verknüpfung zu einer solchen Datei zu erstellen, aber darum geht es nicht. Ich kann nicht kontrollieren, was der...