Hallo,
wie bekomme ich einen FileSelectFolder -Dialog genau so hin, das es nur Datenträger anzeigt?
[Blockierte Grafik: http://download.lima-city.de/deepred/Bilder/98562404240823423.jpg]
Hallo,
wie bekomme ich einen FileSelectFolder -Dialog genau so hin, das es nur Datenträger anzeigt?
[Blockierte Grafik: http://download.lima-city.de/deepred/Bilder/98562404240823423.jpg]
Ja, aber man soll ja noch die Möglichkeit haben, auch die Unterordner auszuwählen.
Hallo
Musst du mal im englischen Forum nach suchen, geht bestimmt.
Sonst hier was ähnliches:
FileSelectFolder("","::{20D04FE0-3AEA-1069-A2D8-08002B30309D}")
[/autoit]Mfg Spider
Hi,
genau so hab ich das vorher auch ausprobiert, aber es wird die Systemsteuerung angezeigt. Im Englischen Forum hab ich leider nix dazu gefunden.
; schau mal im Anhang unter: CLSIDs besondere Ordner
; dort sind einige aufgeführt.
$var = FileSelectFolder ("Wähle einen Ordner aus.", "::{00000000-1080-F9E5-6311-4162E05A6BEE}", 4)
Danke. Der Eintrag Systemsteuerung ist schonmal weg. Allerdings sthet da jetzt Papierkorb. Ich hab nähmlich vor ein Setup-Script zu erstellen und es wär schön doof wenn man es ins Papierkorb installiert oder so
Ja hat denn keiner eine Idee?
Eine eigene Dialogbox erstellen?
$hGui = GUICreate('Wählen Sie ein Laufwerk aus:', 300, 210)
$hTreeView = GUICtrlCreateTreeView(10, 10, 280, 150, Default, 0x00020000)
$hRoot = GUICtrlCreateTreeViewItem('Arbeitsplatz', $hTreeView)
$aDrives = DriveGetDrive('FIXED')
For $i = 1 To $aDrives[0]
GUICtrlCreateTreeViewItem(DriveGetLabel($aDrives[$i]) & ' (' & StringUpper($aDrives[$i]) & ')', $hRoot)
Next
ControlTreeView($hGui, '', $hTreeView, 'Expand', 'Arbeitsplatz')
$hOk = GUICtrlCreateButton('Ok', 150, 170, 60, 25)
$hCancel = GUICtrlCreateButton('Abbrechen', 220, 170, 70, 25)
GUISetState()
While True
Switch GUIGetMsg()
Case -3, $hCancel
Exit
Case $hOk
MsgBox(0,0, ControlTreeView($hGui, '', $hTreeView, 'GetSelected'))
EndSwitch
WEnd
Nein. So einfach geht das doch gar nicht. Guck doch mal:
[Blockierte Grafik: http://bksoft.kilu.de/images/Unbenannt.jpg]
Ich will ja nicht nur die Datenträger anzeigen, sondern auch die Ordner die sich dahinter befinden. Ich hoffe jemand weiß eine Lösung
Sry aber dein Link hilft mir nicht weiter. Sirocool hat das selbe Problem wie ich. Bei seinem FileSelectDialog befindet sich auch das Papierkorb.
Hi,
vielleicht hilft Dir dieses weiter:
; Beispiel aus "SiS"
; $cobDest ist ein "GUICtrlCreateCombo"
Func _dest()
Local $path = FileSelectFolder($languages[71][1], "::{00000000-1080-F9E5-6311-4162E05A6BEE}", 1)
If Not @error Then
GUICtrlSetData($cobDest, $path, $path)
EndIf
EndFunc ;==>_dest
; Ein weiteres Beispiel
FileSelectFolder ("Wähle einen Ordner aus.", "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}", 4)
; Ende
und
CLSIDs besondere Ordner
Sinnvoll bei der Verwendung von FileOpenDialog, FileSaveDialog oder FileSelectFolder
Diese Liste wurde von Registry Guide for Windows at WinGuides Network
entnommen
Beachte: nicht alle Werte können für die oben gelisteten AutoIt Funktionen als Parameter verwendet werden.
Beispiel: FileSelectFolder ("Wähle einen Ordner aus.", "::{00000000-1080-F9E5-6311-4162E05A6BEE}", 1)
Ordner Wert für den "directory"-Parameter der File*-Funktionen
Administrationsaufgaben "::{D20EA4E1-3957-11d2-A40B-0C5020524153}"
Aktenkoffer "::{85BBD920-42A0-1069-A2E4-08002B30309D}"
Systemsteuerung "::{21EC2020-3AEA-1069-A2DD-08002b30309d}"
Schriften "::{D20EA4E1-3957-11d2-A40B-0C5020524152}"
Verlauf "::{FF393560-C2A7-11CF-BFF4-444553540000}"
Posteingang "::{00020D75-0000-0000-C000-000000000046}"
Microsoft Netzwerk "::{00028B00-0000-0000-C000-000000000046}"
Arbeitsplatz "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
Eigene Dateien "::{450D8FBA-AD25-11D0-98A8-0800361B1103}"
Netzwerkumgebung "::{208D2C60-3AEA-1069-A2D7-08002B30309D}"
Netzwerkcomputer "::{1f4de370-d627-11d1-ba4f-00a0c91eedba}"
Netzwerkverbindungen "::{7007ACC7-3202-11D1-AAD2-00805FC1270E}"
Drucker und Faxgeräte "::{2227A280-3AEA-1069-A2DE-08002B30309D}"
Programmordner "::{7be9d83c-a729-4d97-b5a7-1b7313c39e0a}"
Papierkorb "::{645FF040-5081-101B-9F08-00AA002F954E}"
Scanner und Kameras "::{E211B736-43FD-11D1-9EFB-0000F8757FCD}"
Geplante Tasks "::{D6277990-4C6A-11CF-8D87-00AA0060F5BF}"
Startmenüordner "::{48e7caab-b918-4e58-a94d-505519c795dc}"
Temporäre Internetdateien "::{7BD29E00-76C1-11CF-9DD0-00A0C9034933}"
Webordner "::{BDEADF00-C265-11d0-BCED-00A0C90AB50F}"
Viel Erfolg !
Du kannst auch nachher einfach auf einen korrekten Pfad prüfen und eventuell die Auswahl nochmal anzeigen
$var = _selectFolder("Wähle einen Ordner aus.", "", 4)
MsgBox(0, '', $var)
Func _selectFolder($text, $root="", $flags=0, $initDir="", $hWnd=0)
; Prog@ndy
Local $path = "", $next
Do
If $next Then MsgBox(16, 'Ordner wählen', '"' & $path & '"' & @CRLF & "ist kein gültiger Pfad.", 0, $hWnd)
$path = FileSelectFolder($text, $root, $flags, $initDir, $hWnd)
If @error Then Return SetError(1,0,"")
$next = True
Until FileExists($path) And StringRegExp($path, "\A([a-zA-Z]:\\)|(\\\\)")
Return $path
EndFunc