Post by gero » 30 Mar 2024, 07:52
Hallo zusammen + Frohe Ostern !
Ich brauche mal wieder die Hilfe der Wissenden.
Wie unterscheide ich (
mit AHK V1) zuverlässig FILE und FOLDER wenn ich eines von beiden auf ein GUI droppe ?
SplitPath liefert da über
A_GuiEvent ja scheinbar alle Infos.
(SplitPath, EingabeVar [, Dateiname, Verzeichnis, Erweiterung, NameOhneErw, Laufwerk])
Wenn
Erweiterung ein leerer String ist, war es für mich bisher immer ein Folder ... bis auf gestern, da habe ich wohl erstmalig einen Ordner mit Punkten im Namen gedroppt ... und da wird mir der als File statt Folder erkannt.
Ist mir bisher nicht aufgefallen.
Wie bekomme ich das zuverlässig hin, dass (auch ein leerer) Ordner mit Punkten im Namen als Ordner erkannt wird ?
Also z.B. die Ordner :
%A_DeskTop%\
abcxyz_30.03.2024
oder
%A_DeskTop%\
100.00001
Danke schon mal vorab fürs Lesen.
gruss
gero
Anbei eine kleines Script zum testen:
Spoiler
Code: Select all
#SingleInstance force
SendMode Input
Gui,Font,s14 bold
Gui,+AlwaysOnTop
Gui,add,Text,x10 y0 w750 center,- drop File or Folder here -
Gui,Font,s14 normal
Gui,add,TEXT,x10 y+10 w150,DropFile:
Gui,add,TEXT,x+0 yp w600 vDropFile,
Gui,add,TEXT,x10 y+10 w150,Dateiname:
Gui,add,TEXT,x+0 yp w600 vDateiname
Gui,add,TEXT,x10 y+10 w150,Verzeichnis:
Gui,add,TEXT,x+0 yp w600 vVerzeichnis
Gui,add,TEXT,x10 y+10 w150,Erweiterung:
Gui,add,TEXT,x+0 yp w600 vErweiterung
Gui,add,TEXT,x10 y+10 w150,NameOhneErw:
Gui,add,TEXT,x+0 yp w600 vNameOhneErw
Gui,add,TEXT,x10 y+10 w150,Laufwerk:
Gui,add,TEXT,x+0 yp w600 vLaufwerk
Gui,Font,s14 bold
Gui,add,TEXT,x10 y+30 w150,File/Folder ? :
Gui,add,TEXT,x+0 yp w600 center vFile_Folder ,
Gui,show
return
GuiDropFiles:
SplitPath,A_GuiEvent , Dateiname,Verzeichnis,Erweiterung,NameOhneErw,Laufwerk
GuiControl,,DropFile,% A_GuiEvent
GuiControl,,Dateiname,% Dateiname
GuiControl,,Verzeichnis,% Verzeichnis
GuiControl,,Erweiterung,% Erweiterung
GuiControl,,NameOhneErw,% NameOhneErw
GuiControl,,Laufwerk,% Laufwerk
IF (ERWEITERUNG="")
File_Folder := "DropFile is Folder"
else
File_Folder := "DropFile is File"
GuiControl,,File_Folder,% File_Folder
return
^ESC::
GuiClose:
exitapp
return
Hallo zusammen + Frohe Ostern !
Ich brauche mal wieder die Hilfe der Wissenden.
Wie unterscheide ich ([b]mit AHK V1[/b]) zuverlässig FILE und FOLDER wenn ich eines von beiden auf ein GUI droppe ?
[b]SplitPath[/b] liefert da über [b]A_GuiEvent[/b] ja scheinbar alle Infos.
(SplitPath, EingabeVar [, Dateiname, Verzeichnis, Erweiterung, NameOhneErw, Laufwerk])
Wenn [b]Erweiterung[/b] ein leerer String ist, war es für mich bisher immer ein Folder ... bis auf gestern, da habe ich wohl erstmalig einen Ordner mit Punkten im Namen gedroppt ... und da wird mir der als File statt Folder erkannt.
Ist mir bisher nicht aufgefallen.
Wie bekomme ich das zuverlässig hin, dass (auch ein leerer) Ordner mit Punkten im Namen als Ordner erkannt wird ?
Also z.B. die Ordner :
%A_DeskTop%\[b]abcxyz_30.03.2024[/b]
oder
%A_DeskTop%\[b]100.00001[/b]
Danke schon mal vorab fürs Lesen.
gruss
gero
Anbei eine kleines Script zum testen:
[spoiler]
[code]
#SingleInstance force
SendMode Input
Gui,Font,s14 bold
Gui,+AlwaysOnTop
Gui,add,Text,x10 y0 w750 center,- drop File or Folder here -
Gui,Font,s14 normal
Gui,add,TEXT,x10 y+10 w150,DropFile:
Gui,add,TEXT,x+0 yp w600 vDropFile,
Gui,add,TEXT,x10 y+10 w150,Dateiname:
Gui,add,TEXT,x+0 yp w600 vDateiname
Gui,add,TEXT,x10 y+10 w150,Verzeichnis:
Gui,add,TEXT,x+0 yp w600 vVerzeichnis
Gui,add,TEXT,x10 y+10 w150,Erweiterung:
Gui,add,TEXT,x+0 yp w600 vErweiterung
Gui,add,TEXT,x10 y+10 w150,NameOhneErw:
Gui,add,TEXT,x+0 yp w600 vNameOhneErw
Gui,add,TEXT,x10 y+10 w150,Laufwerk:
Gui,add,TEXT,x+0 yp w600 vLaufwerk
Gui,Font,s14 bold
Gui,add,TEXT,x10 y+30 w150,File/Folder ? :
Gui,add,TEXT,x+0 yp w600 center vFile_Folder ,
Gui,show
return
GuiDropFiles:
SplitPath,A_GuiEvent , Dateiname,Verzeichnis,Erweiterung,NameOhneErw,Laufwerk
GuiControl,,DropFile,% A_GuiEvent
GuiControl,,Dateiname,% Dateiname
GuiControl,,Verzeichnis,% Verzeichnis
GuiControl,,Erweiterung,% Erweiterung
GuiControl,,NameOhneErw,% NameOhneErw
GuiControl,,Laufwerk,% Laufwerk
IF (ERWEITERUNG="")
File_Folder := "DropFile is Folder"
else
File_Folder := "DropFile is File"
GuiControl,,File_Folder,% File_Folder
return
^ESC::
GuiClose:
exitapp
return
[/code]
[/spoiler]