Mario P., 05.04.2008 17:55: Hallo,
habe eben in einem meiner Prog's feststellen müssen, das
@GetFileTitle(@Addr(BMP_Pfad$), @Addr(BMP_D$), @Len(BMP_D$))
unter verschiedenen XP-Installationen verschiedene Werte zurück liefert
(andere WIN's hab ich noch nicht getestet), und zwar mal mit Erweiterung
und mal ohne. So heist z.B. eine Bilddatei mal "profan" und mal "profan.bmp".
Kann es an versch. API-Versionen liegen ??
Suche mal den Quelltext raus, dauert nur 'nen Moment...
Aber vieleicht hat schon jemand 'ne Idee.
Mario
So, hier isser:
CLS
Def @GetFileTitle(3) !"COMDLG32.DLL", "GetFileTitleA"
Declare BMP_Pfad$, BMP_D$
BMP_Pfad$ = @LoadFile$("BITMAP EINBINDEN","*.BMP")
Print "Komplett : "+BMP_Pfad$
BMP_D$ = @Space$(255)
@GetFileTitle(@Addr(BMP_Pfad$), @Addr(BMP_D$), @Len(BMP_D$))
BMP_D$ = @Trim$(BMP_D$)+".bmp"
BMP_Pfad$ = @Translate$(BMP_Pfad$,BMP_D$,"")
Print "Pfad : "+BMP_Pfad$
Print "Datei : "+BMP_D$
waitinput
end
David Strutz, 05.04.2008 18:01:
Mario P., 05.04.2008 18:28: Muss ich doch gleich mal probieren...
Mario P., 05.04.2008 18:41: @IF: Danke. Klappt ja bestens, auch ohne API.
Wenn man sowas eben nur alle halbes Jahr mal braucht, schaut man in die Hilfe und nimmt das, was angeboten wird (manchmal grasiert eben die Denkfaulheit)
Können die unterschiedlichen Rückgaben bei der API ( -Version) liegen ??
Mario
Jörg Sellmeyer, 05.04.2008 18:46: Man kann es auch so machen:
Proc DateiName
Parameters Datei$
Return FindFirst$(Datei$)
EndProc
Print DateiName($SysPath + "\\Shell32.dll")
WaitInput
Oder so für ältere Versionen, wenn man die SubStr$-Variante bevorzugt:
Def CharCount(2) Int(Sub(Len(@$(1)),Len(translate$(@$(1),@$(2),""))))
Def VerzeichnisTiefe(1) Int(Sub(Len(@$(1)),Len(Translate$(@$(1),"\\",""))))
Def PfadTeil(2) SubStr$(@$(1),@%(2),"\\")
'Vorher sollte man die Verzeichnistiefe ermitteln
Def DateiName(1) SubStr$(@$(1),Add(VerzeichnisTiefe(@$(1)),1),"\\")
Def DateiPfad(1) Translate$(@$(1),Add$("\\",DateiName(@$(1))),"")
David Strutz, 05.04.2008 18:48: Jörgs Variante scheint mir effizienter!
Sebastian S., 05.04.2008 20:27: Hi,
Zitat von "Mario Patzlaff": Können die unterschiedlichen Rückgaben bei der API ( -Version) liegen ??
nein, das hängt von der Option "Erweiterungen bei bekannten Dateitypen ausblenden" ab (siehe im Explorer unter Extras > Ordneroptionen > Ansicht).
Gruss, Sebastian
Dies ist die Offlinevariante vom Thread [@GetFileTitle bring unterschiedliche Ergebnisse ?].
©2006 XProfan.Com