Seite 1 von 1
Erledigt: Namen der Verzeichnisse in Landesprache
Verfasst: 29.01.2025 09:14
von EmmJott
Guude Morsche!
Habe folgende Fage an Euch: Wie findet man heraus, welchen Namen beispielsweise das Verzeichnis
je nach eingestellter Systemsprache hat. Oder die Namen all der anderen GetUserDirectory(xxx)-Verzeichnisse oder Papierkorb usw. hat?
Re: Namen der Verzeichnisse in Landesprache
Verfasst: 29.01.2025 10:19
von HeX0R
Meinst Du sowas?
Code: Alles auswählen
Dir$ = GetUserDirectory(#PB_Directory_Pictures)
FI.SHFILEINFO
If CoInitialize_(0) = #S_OK
If SHGetFileInfo_(@Dir$, 0, @FI, SizeOf(SHFILEINFO), #SHGFI_DISPLAYNAME)
Debug PeekS(@FI + OffsetOf(SHFILEINFO\szDisplayName))
EndIf
CoUninitialize_()
EndIf
Re: Namen der Verzeichnisse in Landesprache
Verfasst: 30.01.2025 11:31
von EmmJott
Hi,
schwer zu sagen, denn in diesem Beispiel ist CoInitialize_(0) ungleich #S_OK, das
Code: Alles auswählen
If SHGetFileInfo_(@Dir$, 0, @FI, SizeOf(SHFILEINFO), #SHGFI_DISPLAYNAME)
Debug PeekS(@FI + OffsetOf(SHFILEINFO\szDisplayName))
EndIf
CoUninitialize_()
wird also gar nicht abgearbeitet.
Re: Namen der Verzeichnisse in Landesprache
Verfasst: 30.01.2025 15:13
von HeX0R
Sollte eigentlich nicht so sein, müsste aber auch ohne die beiden Befehle funktionieren.
Hab mich nur an die Vorgaben von M$ gehalten
Re: Namen der Verzeichnisse in Landesprache
Verfasst: 30.01.2025 15:40
von mk-soft
Es kann sein das durch ein anderen Aufruf schon die CO initialisiert ist. Somit kann ein #S_False kommen was auch ok ist
Code: Alles auswählen
Dir$ = GetUserDirectory(#PB_Directory_Pictures)
FI.SHFILEINFO
r1 = CoInitialize_(0)
If r1 = #S_OK Or r1 = #S_FALSE
If SHGetFileInfo_(@Dir$, 0, @FI, SizeOf(SHFILEINFO), #SHGFI_DISPLAYNAME)
Debug PeekS(@FI + OffsetOf(SHFILEINFO\szDisplayName))
EndIf
CoUninitialize_()
EndIf
Re: Namen der Verzeichnisse in Landesprache
Verfasst: 31.01.2025 15:08
von EmmJott
Wie immer: allerbeste Unterstützung hier im Forum, kann man gar nicht oft genug sagen!
Herzlichen Dank an alle!