CD-Laufwerke in ComboBox anzeigen?

  • Hallo Leute!
    Ich habe schon wieder n Problem:
    Wie kann man programmieren, dass die erkannten CD-Laufwerke in einer ComboBox angezeigt werden?
    Ich arbeite nämlich an einem Brennprogramm.

    Nach dieser Frage kommt warscheinlich noch, ob autoit mal abgeschafft wird ^^ ^^ ^^

    MfG button421

    Meine fertigen Projekte:
    VirtualCash
    Monopoly Digital

    Daran arbeite ich gerade:
    Einem Skript, womit man ohne Programmierkentisse eigene Programme machen kann (habe ich selber früher gesucht :D ) Stand: ||||||||||||||||||||||||| 6%

  • So in etwa?

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $CDTest = GUICreate("CDTest", 139, 120, 192, 124)
    $CD_Drives = GUICtrlCreateListView("CD-Laufwerke", 8, 8, 121, 97)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    $aDrives = DriveGetDrive("CDROM")
    For $i = 1 To $aDrives[0]
    GUICtrlCreateListViewItem(StringUpper($aDrives[$i]), $CD_Drives)
    Next

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • Ja, genau! Aber kann ich jetzt statt der ListView auf ne ComboBox nehmen?

    MfG button421

    Meine fertigen Projekte:
    VirtualCash
    Monopoly Digital

    Daran arbeite ich gerade:
    Einem Skript, womit man ohne Programmierkentisse eigene Programme machen kann (habe ich selber früher gesucht :D ) Stand: ||||||||||||||||||||||||| 6%

  • Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $CDTest = GUICreate("CDTest", 139, 120, 192, 124)

    [/autoit] [autoit][/autoit] [autoit]

    $aDrives = DriveGetDrive("CDROM")
    For $i = 1 To $aDrives[0]
    $cd = StringUpper($aDrives[$i]) & @CRLF
    Next
    GUICtrlCreateCombo($cd,5,5,120)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • autoBert: Dein Script zeigt aber nur ein gefundenes Laufwerk an ;)
    Hier die überarbeitete ComboBox Version:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $CDTest = GUICreate("CDTest", 139, 120, 192, 124)
    $CD_Drives = GUICtrlCreateCombo("", 5, 5, 120)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    $sCD_Drives = ""
    $aDrives = DriveGetDrive("CDROM")

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 1 To $aDrives[0]
    $sCD_Drives &= StringUpper($aDrives[$i]) & "|"
    Next

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($CD_Drives, $sCD_Drives, $aDrives[1])

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • Gut, aber wenn ich einen Eintrag auswähle wie z.B: E://, verdoppelt sich alles.
    Hier Mein Script:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <WindowsConstants.au3>
    #include <array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form= ;Das Hauptprogramm
    $CDBurner = GUICreate("Easy CD Burner v1.0 - created by button421 on autoit.de", 1003, 574, 4, 90)
    $Label1 = GUICtrlCreateLabel("Schritt 1: Dateien in die Brennliste hinzufügen:", 8, 40, 269, 17)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $Combo1 = GUICtrlCreateCombo("---Kein CD-Laufwerk ausgewählt---", 312, 328, 177, 25)
    $List1 = GUICtrlCreateList("", 16, 88, 169, 435)
    $Button1 = GUICtrlCreateButton("Hinzufügen", 192, 88, 75, 25)
    $Label2 = GUICtrlCreateLabel("Schritt 2: Optionen festlegen:", 264, 136, 171, 17)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $Checkbox1 = GUICtrlCreateCheckbox("Log-Datei mit auf CD schreiben", 312, 160, 169, 17)
    $Checkbox2 = GUICtrlCreateCheckbox("Autostart integieren", 312, 184, 121, 17)
    $Checkbox3 = GUICtrlCreateCheckbox("Tada!!!-Sound bei beendigung des Brennvorgangs abspielen", 312, 304, 313, 17)
    $Label5 = GUICtrlCreateLabel("Schritt 3: Brennvorgang starten!!!:", 496, 344, 198, 17)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $Progress1 = GUICtrlCreateProgress(576, 392, 401, 25)
    $Progress2 = GUICtrlCreateProgress(576, 448, 401, 25)
    $Label6 = GUICtrlCreateLabel("Gesamtvorgang:", 528, 368, 82, 17)
    $Label7 = GUICtrlCreateLabel("Schritt für Schritt-Vorgang:", 528, 424, 128, 17)
    $Button4 = GUICtrlCreateButton("Brennvorgang starten!", 880, 512, 115, 33)
    $MenuItem1 = GUICtrlCreateMenu("Datei")
    $SubMenuItem1 = GUICtrlCreateMenuItem("Öffnen...", $MenuItem1)
    $SubMenuItem2 = GUICtrlCreateMenuItem("Speichern...", $MenuItem1)
    $SubMenuItem3 = GUICtrlCreateMenuItem("Beenden", $MenuItem1)
    $MenuItem2 = GUICtrlCreateMenu("Bearbeiten")
    $SubMenuItem1b = GUICtrlCreateMenuItem("Einstellungen", $MenuItem2)
    $MenuItem3 = GUICtrlCreateMenu("?")
    $SubMenuItem1c = GUICtrlCreateMenuItem("Hilfe!!!", $MenuItem3)
    $SubMenuItem2c = GUICtrlCreateMenuItem("Über Easy CD Burner v1.0", $MenuItem3)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form= ;Der Autostartassitent
    $Autorunassitant = GUICreate("Autostarteinstellungen", 296, 117, 193, 125)
    $Label3 = GUICtrlCreateLabel("Datei die beim einlegen der CD gestartet werden soll:", 8, 24, 253, 17)
    $Button2 = GUICtrlCreateButton("...", 264, 16, 25, 25, 0)
    $Label4 = GUICtrlCreateLabel("Icon für den CD-Autostart:", 8, 64, 127, 17)
    $Button3 = GUICtrlCreateButton("...", 144, 56, 25, 25, 0)
    $Button5 = GUICtrlCreateButton("OK", 208, 88, 81, 25, 0)
    GUISetState(@SW_HIDE)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $files = FileOpenDialog("", @DesktopCommonDir, "Alle Dateien (*.*)", 15)
    If @error Then
    MsgBox(16, "Fehler!", "Keine Datei ausgewählt!")
    ElseIf Not IsArray($files) Then
    $f = StringSplit($files, "\", 1)
    GUICtrlSetData($List1, $f[UBound($f) - 1])
    Else
    $f = StringSplit($files, "|", 1)
    For $i = 2 To $f[0]
    GUICtrlSetData($List1, $f[$i])
    Next
    EndIf
    Case $Button2
    $autorun = FileOpenDialog("Autostartdatei wählen", @DesktopCommonDir, "Alle Dateien (*.*)", 15)
    If @error Then
    MsgBox(16,"Fehler!","Keine Autostartdatei gewählt")
    Else
    IniWrite(_cddrives()"autorun.inf","autorun","File",$autorun)
    EndIf

    Case $Button3
    $icon = FileOpenDialog("Icon wählen", @DesktopCommonDir, "Icons (*.ico)", 15)
    If @error Then
    MsgBox(16,"Fehler!","Kein Icon gewählt!")
    EndIf

    Case $Button4
    _startburn()

    Case $Button5
    GUISetState(@SW_HIDE, $Autorunassitant)

    Case $Checkbox1
    If BitAND(GUICtrlRead($Checkbox1), $GUI_CHECKED) Then
    IniWrite($Combo1 "log.txt","Easy CD Burner v1.0 Log","Datum des Brennvorgangs", _date())
    EndIf
    Case $Checkbox2
    If BitAND(GUICtrlRead($Checkbox2), $GUI_CHECKED) Then
    GUISetState(@SW_SHOW, $Autorunassitant)
    EndIf
    Case $Checkbox3
    _playtada(_startburn())
    Case $Combo1
    _cddrives()
    Case $SubMenuItem1
    _openprj()
    Case $SubMenuItem2
    _saveprj()
    Case $SubMenuItem3
    _cls()
    Case $SubMenuItem1b
    _prb()
    Case $SubMenuItem1c
    _help()
    Case $SubMenuItem2c
    _info()
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _cddrives()
    $sCD_Drives = ""
    $aDrives = DriveGetDrive("CDROM")

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 1 To $aDrives[0]
    $sCD_Drives &= StringUpper($aDrives[$i]) & "|"
    Next

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Combo1, $sCD_Drives, $aDrives[1])
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]


    Das nochnich fertige Brennprogramm.

    Meine fertigen Projekte:
    VirtualCash
    Monopoly Digital

    Daran arbeite ich gerade:
    Einem Skript, womit man ohne Programmierkentisse eigene Programme machen kann (habe ich selber früher gesucht :D ) Stand: ||||||||||||||||||||||||| 6%