Autor Thema: Pfadvorgabe bei Verzeichnis Dialog  (Gelesen 1341 mal)

Offline arcon

  • Frischling
  • *
  • Beiträge: 47
  • Geschlecht: Männlich
  • Notes4Ever
Pfadvorgabe bei Verzeichnis Dialog
« am: 06.06.03 - 13:01:56 »
Im folgen Script wird der User aufgefordert eine Verzeichniss zu wählen
wie kann ich da ein Vorgabeverzeichnis angeben (zB.: C:\Temp).  ???

'Get Folder Declarations
Const BIF_RETURNONLYFSDIRS = 1
Const BIF_DONTGOBELOWDOMAIN = 2
Const MAX_PATH = 260
Private Type BrowseInfo
   hWndOwner      As Long
   pIDLRoot       As Long
   pszDisplayName As Long
   lpszTitle      As String
   ulflags        As Long
   lpfnCallback   As Long
   lParam         As Long
   iImage         As Long
End Type
Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
Declare Function SHGetPathFromIDList Lib "shell32" (Byval pidList As Long, Byval lpBuffer As String) As Long

Public Function GetDirectory(BoxTitle As String) As String
   Dim lpIDList As Long
   Dim sBuffer  As String *260
   Dim szTitle   As String
   Dim temp      As String
   Dim endpath As String
   Dim filepath   As String
   
   Dim tBrowseInfo As BrowseInfo
   
   tbrowseinfo.lpszTitle = BoxTitle
   tBrowseInfo.ulflags = BIF_RETURNONLYFSDIRS + BIF_DONTGOBELOWDOMAIN
   
   lpIDList = SHBrowseForFolder(tBrowseInfo)
   
   If (lpIDList) Then
      SHGetPathFromIDList lpIDList, sBuffer
      temp = Left(sBuffer, Instr(sBuffer, Chr(0)) - 1)
      endpath = "\"
      filepath$ = temp + endpath
   End If
   GetDirectory = filepath$
End Function

THX
Arcon

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Pfadvorgabe bei Verzeichnis Dialog
« Antwort #1 am: 06.06.03 - 13:31:43 »
Hi,

das wird über die Variable pIDLRoot in der BrowseInfo - Struktur vorgegeben. Ich war mal ein bisschen auf der Suche wie die Variable gesetzt werden könnte, habe aber auf die Schnelle nichts gefunden.

Am besten schaust du mal intensiver unter http://msdn.microsoft.com/library/default.asp.

Oder unser Win32-API - Papst eknori  ;D ;) hat noch eine Lösung.

Axel
« Letzte Änderung: 06.06.03 - 13:36:36 von Axel »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline arcon

  • Frischling
  • *
  • Beiträge: 47
  • Geschlecht: Männlich
  • Notes4Ever
Re:Pfadvorgabe bei Verzeichnis Dialog
« Antwort #2 am: 06.06.03 - 18:40:17 »
 :-\ ist zwahr schon die Richtung nur bin ich so richtig schön hilflos wen ich mich da umsehe. Habe da zwahr was gefunden nur wich das nun in Notes umsetzten soll poeee kein Tau.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/programmersguide/shell_basics/shell_basics_programming/folder_id.asp

Aber danke mal für die mühe falls noch was findest wähere ich natürlich happy  ;)


THX
Arcon

Offline Daenu

  • Frischling
  • *
  • Beiträge: 35
Re: Pfadvorgabe bei Verzeichnis Dialog
« Antwort #3 am: 22.03.05 - 07:15:37 »
Bin selber schon seit einiger Zeit auf der Suche  :-[
Das Problem ist, dass der Pfad ein Variable des Typs Long ist. Also wie mache ich aus einem Pfad Namen eine Zahl? Es gibt Lösungen in VB, leider benutzen diese alles "Addressof" und das gibts nicht in LS.

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re: Pfadvorgabe bei Verzeichnis Dialog
« Antwort #4 am: 22.03.05 - 08:35:11 »
hier ganz unten ist ne Funktion, die das scheinbar ohne AdressOf machen kann. Habs selber aber nicht probiert
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz