OpenFileDialog

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Benutzeravatar
purebas
Beiträge: 127
Registriert: 11.03.2008 23:59
Wohnort: München

OpenFileDialog

Beitrag von purebas »

Wie kann ich OpenFileDialog so aufrufen, dass "Computer" - statt irgendein Startordner - vorausgewählt ist?
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7032
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: OpenFileDialog

Beitrag von STARGÅTE »

Probier mal:

Code: Alles auswählen

#PB_SpecialFolder_Desktop   = 0 
#PB_SpecialFolder_Programs  = 2 
#PB_SpecialFolder_Personal  = 5 
#PB_SpecialFolder_Favorites = 6 
#PB_SpecialFolder_StartUp   = 7 
#PB_SpecialFolder_Recent    = 8 
#PB_SpecialFolder_SendTo    = 9 
#PB_SpecialFolder_StartMenu = 11 
#PB_SpecialFolder_Drives    = 17	
#PB_SpecialFolder_Nethood   = 19 
#PB_SpecialFolder_Fonts     = 20 
#PB_SpecialFolder_Templates = 21
Procedure.s GetSpecialFolder(Flag) 
  Protected *Buffer, Location$ = Space(#MAX_PATH) 
  If SHGetSpecialFolderLocation_ (0, Flag, @*Buffer) = #NOERROR 
    If SHGetPathFromIDList_ (*Buffer, @Location$) 
      If Right(Location$, 1) <> "\" : Location$ + "\" : EndIf 
      ProcedureReturn Location$ 
    EndIf 
  EndIf 
EndProcedure 

OpenFileRequester("", GetSpecialFolder(#PB_SpecialFolder_Drives), "", 0)
wenn es mit der Konstante #PB_SpecialFolder_Drives nicht geht, dann wäre die alternative
#PB_SpecialFolder_Desktop, dann müsstest du von dort aus auf den Computer zugreifen (bzw. Arbeitsplatz)

vllt findest du auch in der API-Hilfe bei SHGetSpecialFolderLocation_()
eine Konstante die bei dir geht
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Antworten