Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Explorer starten - aber mit Dateiauswahl (https://www.delphipraxis.net/214245-explorer-starten-aber-mit-dateiauswahl.html)

wurzelsepp1 10. Dez 2023 20:14

Explorer starten - aber mit Dateiauswahl
 
Moin gemeinde,

der "Master of Anfämgerfrage" hat wie der eine Frage:

Diesmal möchte ich ein Windows-Dateifenster (Explorer) in einem bestimmten Verzeichnis starten und dort eine bestimmte Datei markieren.
Also z.B. das Verzeichnis c:test (mit 1000 Dateien drin) wird geöffnet und der Cursor springt auf die Datei test.txt

Früher gab es dazu einen Parameter, den man dem Explorer mitgeben konnte. Diese Funktion gibts in modernen Windosen aber scheinbar nicht mehr.

Wie macht man das heute?

himitsu 10. Dez 2023 20:16

AW: Explorer starten - aber mit Dateiauswahl
 
Bei Google suchenexplorer parameter select file

wurzelsepp1 10. Dez 2023 21:19

AW: Explorer starten - aber mit Dateiauswahl
 
Das kannte ich. Funktioniert bei mir nicht, weil scheinbar der Pfad zu lang ist.

Ein /select, "c:/test/test.txt" funktioniert,
ein /select, "c:/eins/zwei/drei/.../siebzehn/test.txt" hingegen nicht.

Any idea?

DeddyH 11. Dez 2023 05:44

AW: Explorer starten - aber mit Dateiauswahl
 
Wie ist es mit
Zitat:

/select,"\\?\c:\eins\zwei\drei\...\siebzehn\test.tx t"
:?:

jaenicke 11. Dez 2023 08:11

AW: Explorer starten - aber mit Dateiauswahl
 
Zitat:

Zitat von wurzelsepp1 (Beitrag 1530653)
Funktioniert bei mir nicht, weil scheinbar der Pfad zu lang ist.

Ist wirklich der Pfad zu lang oder liegt es vielleicht an den Umlauten, falls du eine Batchdatei verwendest oder so?

Wie lang ist der Pfad denn konkret? Weniger als 260 Zeichen sollte kein Problem sein und funktioniert hier auch mit über 200 Zeichen.

Bei mehr als 260 Zeichen ist die Längenbeschränkung für Pfade erreicht. Dann brauchst du die long paths wie sie DeddyH gezeigt hat. Besser ist es allerdings, so lange Pfade auch heute noch zu vermeiden, da viele Programme damit ein Problem haben.

himitsu 11. Dez 2023 10:51

AW: Explorer starten - aber mit Dateiauswahl
 
Nach dem "C:\" maximal 256 Zeichen, bzw. inkl. Laufwerk und abschließender #0 sind es die 260 Zeichen (MAX_PATH).

Seit Win10 kann man im Windows die Verwendung langer Pfade aktivieren,
und zusätzlich muß auch noch jedes Programm sagen, dass es damit umgehen kann,
aber ich bin mir fast ganz sicher, dass Emba das noch nicht ins Manifest aufgenommen hat.
https://learn.microsoft.com/de-de/wi...1607-and-later

wurzelsepp1 11. Dez 2023 14:18

AW: Explorer starten - aber mit Dateiauswahl
 
Zitat:

Zitat von jaenicke (Beitrag 1530658)
Ist wirklich der Pfad zu lang oder liegt es vielleicht an den Umlauten, falls du eine Batchdatei verwendest oder so?

Mir schwant da etwas .. der Pfad enthält ein @.

Obwohl, das beim Aufruf der Shell-Api kein Problem ist. Da wird artig in das Verzeichnis gewechselt, es fehlt aber die Ausahl der gewünschten Datei.

Ich probiere das gleich mal ..

wurzelsepp1 11. Dez 2023 14:24

AW: Explorer starten - aber mit Dateiauswahl
 
Zitat:

Zitat von DeddyH (Beitrag 1530656)
Wie ist es mit
Zitat:

/select,"\\?\c:\eins\zwei\drei\...\siebzehn\test.tx t"
:?:

Gleiches Ergebnis: Es wird "Dieser PC" geöffnet

wurzelsepp1 11. Dez 2023 14:26

AW: Explorer starten - aber mit Dateiauswahl
 
[QUOTE=wurzelsepp1;1530669]
Zitat:

Zitat von jaenicke (Beitrag 1530658)
Ist wirklich der Pfad zu lang oder liegt es vielleicht an den Umlauten, falls du eine Batchdatei verwendest oder so?

Das ist leider nicht die Ursache. Mit "_" statt "@" geht's auch nicht.

Ich habe das nun übrigens direkt aus Windows "Ausführen" getestet.

jaenicke 11. Dez 2023 14:44

AW: Explorer starten - aber mit Dateiauswahl
 
Hast du denn einmal einen konkreten Pfad, mit dem du getestet hast?

wurzelsepp1 11. Dez 2023 15:16

AW: Explorer starten - aber mit Dateiauswahl
 
Zitat:

Zitat von jaenicke (Beitrag 1530674)
Hast du denn einmal einen konkreten Pfad, mit dem du getestet hast?

Klar:

C:\Users\mustermann\OneDrive\Documents\Embarcadero \Studio\Projekte\Alex-Outlook\Win32\Debug\attachments\max@mustermeier.de \20190701_123740.jpg

wurzelsepp1 11. Dez 2023 15:17

AW: Explorer starten - aber mit Dateiauswahl
 
Das Leerzeichen vor dem Dateinamen, das man hier sieht, ist im Pfad natürlich nicht enthalten .. schein ein Editor-Problem zu sein ..

himitsu 11. Dez 2023 15:29

AW: Explorer starten - aber mit Dateiauswahl
 
keine Sorge, dass kennen wir schon. -> einfach auf Zitieren geklickt und schon sieht man es "richtig".

-> ist vom Forum ein Schutz, damit niemand (mehr) mit zu langem Text das Layout schrottet.
Alle 50 Zeichen ... vorne auch schonmal, beim "Embarcadero" :wink:
(leider werden / und \ von der SplittFunktion nicht beachtet)


Also zu lang (MAX_PATH) ist es schonmal nicht.





PS: Du kannst selber einfach z.B. ein/mehrere [B][/B] in lange Datei-/RegistryPfade einfügen, dann kommt das Leerzeichen nicht. (also alle maximal 50 Zeichen, auch nachträglich der Post bearbeitbar)
C:\Users\mustermann\OneDrive\Documents\Embarcadero\Studio\Projekte\Alex-Outlook\Win32\Debug\attachments\max@mustermeier.de\20190701_123740.jpg

wurzelsepp1 11. Dez 2023 18:21

AW: Explorer starten - aber mit Dateiauswahl
 
Zitat:

Zitat von himitsu (Beitrag 1530682)
keine Sorge, dass kennen wir schon.

Dank für den Hinweis :)

Zitat:

Also zu lang (MAX_PATH) ist es schonmal nicht.
Stimmt. Da es ein Problem außerhalb von Delphi ist, könnte es ja auch anderen aufgefallen sein. Aber wahrscheinlich nutzt das niemend außer mir .. :)

himitsu 11. Dez 2023 18:32

AW: Explorer starten - aber mit Dateiauswahl
 
Mit einem ungültigem Pfad schonmal erlebt.
Da hatte sich ein böses Zeichen in einen zusammengesetzen Pfad aus einem DB-Setting eingeschlichen, als Initial-Pfad für den Dialog.



Netzwerkpfade zu einem nicht erreichbaren Rechner/NAS, machen auch Spaß.
Hier auch aufpassen, wenn man sowas als Favorit/Schnellwahl in den Dialog einfügt.

Ebenfalls Delphi selbst raucht gern brutal ab, wenn so ein Offline-Pfad in Favoriten, sowie "Letzte Öffnen" sich befindet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz