Problem mit Radio

  • Hallo, ich habe ein Problem und bekomme mein Radio nicht zum laufen.
    Hier mein Code :

    Spoiler anzeigen
    [autoit]

    #include

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

    Opt('MustDeclareVars', 1)

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

    Example()

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

    Func Example()

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

    Local $radio1, $radio2, $msg
    GUICreate("My GUI radio")
    $radio1 = GUICtrlCreateRadio("Radio 1", 10, 10, 120, 20)
    $radio2 = GUICtrlCreateRadio("Radio 2", 10, 40, 120, 20)
    GUICtrlSetState($radio2, $GUI_CHECKED)

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $radio1 And BitAND(GUICtrlRead($radio1), $GUI_CHECKED) = $GUI_CHECKED
    FileOpen("C:\Benutzer\Komotz\Desktop\bigfm-cbr-128")
    Case $msg = $radio2 And BitAND(GUICtrlRead($radio2), $GUI_CHECKED) = $GUI_CHECKED
    MsgBox(64, 'Info:', 'You clicked on Radio 2 and it is Checked.')
    EndSelect
    WEnd

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

    EndFunc

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


    Wenn ich auf Radio 1 drücke, kommt eine Fehlermeldung.
    Ich möchte, wenn ich auf den Button Radio 1 drücke, das er das Lied öffnet und abspielt.
    Das ich halt von Radio zu Radio wechseln kann.
    Ihr könnt euch den Quelltext kopieren und selber mal schauen.
    Ach und noch eine frage, ginge es auch das das Lied direkt über die GUI läuft? Das wäre viel viel besser =)
    Ich hoffe doch das mir jemand helfen kann und dafür wäre ich sehr Dankbar :)

  • Hallo Texos,

    erstens hast du die Include-Datei vergessen, zweitens wenn du das ohne Button möchtest, d.h. wenn du von einem zum anderen wechselst, musst du diese auch so zu sagen melden lassen.

    Hier ist mal der Code:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <WindowsConstants.au3>

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

    Global $radio1, $radio2, $msg

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

    GUICreate("My GUI radio")

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

    $radio1 = GUICtrlCreateRadio("Radio 1", 10, 10, 120, 20)
    $radio2 = GUICtrlCreateRadio("Radio 2", 10, 40, 120, 20)
    GUICtrlSetState($radio2, $GUI_CHECKED)

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

    GUIRegisterMsg($WM_COMMAND, "_WM_COMMAND")

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()

    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

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

    Func _WM_COMMAND()
    If GUICtrlRead($radio1) = $GUI_CHECKED Then
    MsgBox(64, 'Info:', 'You clicked on Radio 1 and it is Checked.')
    Else
    MsgBox(64, 'Info:', 'You clicked on Radio 2 and it is Checked.')
    EndIf
    EndFunc

    [/autoit]
  • Zitat

    Ach und noch eine frage, ginge es auch das das Lied direkt über die GUI läuft?

    Meinste das so?
    ( Trag noch hinter Soundplay den Pfad zu nem Lied von dir ein )

    Spoiler anzeigen
    [autoit]

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

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 633, 447, 400, 229)
    $Radio1 = GUICtrlCreateRadio("Lied 1", 56, 48, 113, 17)
    $Radio2 = GUICtrlCreateRadio("Lied 2", 56, 72, 113, 17)
    $Abspielen = GUICtrlCreateButton("Abspielen", 56, 100, 113, 25)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Abspielen
    If GUICtrlRead ( $Radio1 ) = $GUI_CHECKED Then
    SoundPlay ( "D:\Lieder\Madcon - Beggin.mp3" )
    ElseIf GUICtrlRead ( $Radio2 ) = $GUI_CHECKED Then
    SoundPlay ( "D:\Lieder\House Clup Hottest - 14 - Track 14.mp3" )
    EndIf

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

    EndSwitch
    WEnd

    [/autoit]
  • Vielen dank für deine schnelle antwort :)
    bekomme es aber immernoch nicht hin
    er sagt incorrect number of parameter...
    Hier das hab ich geändert:

    Spoiler anzeigen
    [autoit]

    Func _WM_COMMAND()
    If GUICtrlRead($radio1) = $GUI_CHECKED Then
    FileOpen("C:\Benutzer\Komotz\Desktop\bigfm-cbr-128.m3u")
    Else
    MsgBox(64, 'Info:', 'You clicked on Radio 2 and it is Checked.')
    EndIf
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • Oder mach es so:

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <GuiConstants.au3>
    #include <Sound.au3>

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

    Global $WM_DROPFILES = 0x233
    Global $gaDropFiles[1], $str = ""

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

    Local $radio1, $radio2, $msg
    GUICreate("My GUI radio",300,180,-1,-1,-1,$WS_EX_ACCEPTFILES)
    $radio1 = GUICtrlCreateRadio("Radio 1", 10, 10, 120, 20)
    $radio2 = GUICtrlCreateRadio("Radio 2", 10, 40, 120, 20)
    GUICtrlSetState($radio2, $GUI_CHECKED)
    $hList = GuiCtrlCreateList("",10,80,280,90)
    GUICtrlSetState (-1, $GUI_DROPACCEPTED)
    GUIRegisterMsg ($WM_DROPFILES, "WM_DROPFILES_FUNC")
    GUISetState()

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

    While 1
    sleep(50)
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $radio1
    If GuiCtrlRead($hlist) <> "" Then
    SoundPlay(GuiCtrlRead($hlist))
    EndIf
    Case $msg = $radio2
    MsgBox(64, 'Info:', 'You clicked on Radio 2')
    EndSelect
    WEnd

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

    Func WM_DROPFILES_FUNC($hWnd, $msgID, $wParam, $lParam)
    Local $nSize, $pFileName
    Local $nAmt = DllCall("shell32.dll", "int", "DragQueryFile", "hwnd", $wParam, "int", 0xFFFFFFFF, "ptr", 0, "int", 255)
    For $i = 0 To $nAmt[0] - 1
    $nSize = DllCall("shell32.dll", "int", "DragQueryFile", "hwnd", $wParam, "int", $i, "ptr", 0, "int", 0)
    $nSize = $nSize[0] + 1
    $pFileName = DllStructCreate("char[" & $nSize & "]")
    DllCall("shell32.dll", "int", "DragQueryFile", "hwnd", $wParam, "int", $i, "ptr", DllStructGetPtr($pFileName), "int", $nSize)
    ReDim $gaDropFiles[$i+1]
    $gaDropFiles[$i] = DllStructGetData($pFileName, 1)
    $pFileName = 0
    Next
    $str = ""
    For $i = 0 To UBound($gaDropFiles) - 1
    $str &= "|" & $gaDropFiles[$i]
    Next
    GUICtrlSetData($hList, $str)
    EndFunc

    [/autoit]

    Achja und lass das WM_COMMAND raus! Entweder du setzt direkt ne Funktion auf deine Controls oder ebn durch die Main-Loop (wie bei Greek)..

  • WoW danke =)
    aber wie öffnet er jetz die Datei wenn ich auf radio 1 drücke : C:\Benutzer\Komotz\Desktop\bigfm-cbr-128 ?
    wo kann ich dies einfügen?

  • [autoit]

    While 1
    sleep(50)
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $radio1
    If GuiCtrlRead($hlist) <> "" Then
    SoundPlay(GuiCtrlRead($hlist))
    EndIf
    Case $msg = $radio2
    MsgBox(64, 'Info:', 'You clicked on Radio 2')
    EndSelect
    WEnd

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


    Bei Case $msg= $radio2

  • Ehm einfach per drag and drop deine datei nehmen, auf die gui schieben, dann in der Liste auswählen und Radio 1 anklicken!
    Aber wie gesagt, dass ist nur ein buggy Ansatz! ;P


    Bei Case $msg= $radio2

    *hust* Wenn überhaupt bei Radio1..

  • ich bekomm es einfach nicht hin =(
    stimmt das hier so?

    [autoit]

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

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 633, 447, 400, 229)
    $Radio1 = GUICtrlCreateRadio("Radio 1", 56, 48, 113, 17)
    $Radio2 = GUICtrlCreateRadio("Radio 2", 56, 72, 113, 17)
    $Abspielen = GUICtrlCreateButton("Abspielen", 56, 100, 113, 25)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Abspielen
    If GUICtrlRead ( $Radio1 ) = $GUI_CHECKED Then
    SoundPlay ( "D:\Lieder\Madcon - Beggin.mp3" )
    ElseIf GUICtrlRead ( $Radio2 ) = $GUI_CHECKED Then
    SoundPlay ( "C:\Users\Komotz\Desktop\listen.m3u" )
    EndIf

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

    EndSwitch
    WEnd

    [/autoit]
  • es ist ein online radio . man kann die datei runterladen und über wmp hören, es wird zum server geleitet und man braucht halt internet dafür^^

  • z.B. bei https://autoit.de/www.BigFM.de
    wenn man bigfm hören will und auf winamp klickt kann man die datei runterladen. wenn man sie startet dann läuft alles über den wmp
    ach und noch eine frage, hoffe ich nerve euch nicht :(
    kann man auch einfügen, dass man neber Lied 1 drück auf den Button durchsuchen und man dann das lied suchen kann und dann mit ok bestätigen kann, somit es dann in dem Button Lied 1 gespeichert ist?
    Edit: muss nun off, ich danke euch das ihr mir alle geholfen habt =)
    bis heute abend =)

    Einmal editiert, zuletzt von Texos (15. Mai 2009 um 16:38)

  • So speicherst du es z.b. für ein ein Radio ein

    Spoiler anzeigen
    [autoit]

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

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 633, 447, 400, 229)
    $Radio1 = GUICtrlCreateRadio("Lied 1", 56, 48, 113, 17)
    $Radio2 = GUICtrlCreateRadio("Lied 2", 56, 72, 113, 17)
    $RadiosBelegen = GUICtrlCreateButton("Radios belegen", 56, 100, 113, 25)
    $Abspielen = GUICtrlCreateButton("Abspielen", 56, 140, 113, 25)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

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

    $pfad=FileOpenDialog ( "Lied 1 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio1Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 2 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio2Lied", $pfad ) ; speichern

    Case $Abspielen
    If FileExists ( @ScriptDir&"\lieder.ini" ) Then
    If GUICtrlRead ( $Radio1 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio1Lied", "keines" )
    $a=SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio2 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio2Lied", "keines" )
    SoundPlay ( $LiedPfad )
    EndIf
    Else
    MsgBox ( 0, "Radios belegen", "Radios bitte vorher belegen" )
    EndIf
    EndSwitch
    WEnd

    [/autoit]
  • vielen dank =)
    ich freue mich das ihr mich alle unterstützt. ist halt mein erstes radio welches ich mache
    ich danke euch allen für eure hilfe :)
    eine frage: wenn man die radios belegt, kann man irgendwie etwas einfügen das er auf dem Computer automatisch nach dem Lied sucht wie man es genannt hat wenn er es nicht findet am anfang?
    dann kann ich es einem freund noch senden und dann kann ich die datei compilen und er muss nurnoch starten, weil ich ja leider immer die titel in der gui von den liedern dann ändern muss(weil ich ab und zu neue lieder reinbring) und den pfad weil er bei ihm anders ist :/... wenn er dann das lied nicht findet soll er an der stelle in der gui anzeigen (Lied nicht gefunden)
    wenn so etwas ginge wäre ich natürlich dankbar wenn mir jemand helfen kann =)
    Hier ist nun meine Datei, funktioniert alles prima bis auf das was ich noch gefragt habe

    Spoiler anzeigen
    [autoit]

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

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Geheimtitel", 633, 447, 400, 229)
    $Radio1 = GUICtrlCreateRadio("01 - test1", 56, 48, 160, 17)
    $Radio2 = GUICtrlCreateRadio("02 - test2", 56, 72, 160, 17)
    $Radio3 = GUICtrlCreateRadio("03 - test3", 56, 96, 160, 17)
    $Radio4 = GUICtrlCreateRadio("04 - test4", 56, 120, 160, 17)
    $Radio5 = GUICtrlCreateRadio("05 - test5", 56, 144, 160, 17)
    $Radio6 = GUICtrlCreateRadio("06 - test6", 56, 168, 160, 17)
    $Radio7 = GUICtrlCreateRadio("07 - test7", 56, 192, 160, 17)
    $Radio8 = GUICtrlCreateRadio("08 - test8", 56, 216, 160, 17)
    $Radio9 = GUICtrlCreateRadio("13 - test9", 56, 240, 160, 17)
    $Radio10 = GUICtrlCreateRadio("12 - test10", 56, 264, 160, 17)
    $Radio11 = GUICtrlCreateRadio("10 - test11", 56, 288, 160, 17)
    $Radio12 = GUICtrlCreateRadio("09 - test", 56, 312, 160, 17)

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

    ;buttons
    $Abspielen = GUICtrlCreateButton("Abspielen", 480, 50, 113, 25)
    $Lauter = GUICtrlCreateButton("Lauter", 480, 75, 133, 25)
    $Leiser = GUICtrlCreateButton("Leiser", 480, 100, 133, 25)
    $RadiosBelegen = GUICtrlCreateButton("Lieder belegen", 480, 125, 113, 25)
    ;
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Lauter
    Send("{VOLUME_UP 10}")
    Case $Leiser
    Send("{VOLUME_DOWN 10}")
    Case $RadiosBelegen
       
    $pfad=FileOpenDialog ( "Lied 1 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio1Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 2 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio2Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 3 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio3Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 4 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio4Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 5 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio5Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 6 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio6Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 7 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio7Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 8 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio8Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 9 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio9Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 10 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio10Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 11 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio11Lied", $pfad ) ; speichern
    $pfad=FileOpenDialog ( "Lied 12 auswählen", @ScriptDir, "Musik (*.wav;*.mp3)" )
    IniWrite ( @ScriptDir&"\lieder.ini", "lieder", "Radio12Lied", $pfad ) ; speichern
       
    Case $Abspielen
    If FileExists ( @ScriptDir&"\lieder.ini" ) Then
    If GUICtrlRead ( $Radio1 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio1Lied", "keines" )
    $a=SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio2 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio2Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio3 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio3Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio4 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio4Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio5 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio5Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio6 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio6Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio7 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio7Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio8 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio8Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio9 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio9Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio10 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio10Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio11 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio11Lied", "keines" )
    SoundPlay ( $LiedPfad )
    ElseIf GUICtrlRead ( $Radio12 ) = $GUI_CHECKED Then
    $LiedPfad=IniRead ( @ScriptDir&"\lieder.ini", "lieder", "Radio12Lied", "keines" )
    SoundPlay ( $LiedPfad )
       
    EndIf
    Else
    MsgBox ( 0, "Radios belegen", "Radios bitte vorher belegen" )
    EndIf
    EndSwitch
    WEnd

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

    2 Mal editiert, zuletzt von Texos (16. Mai 2009 um 00:28)

  • Also^^
    Ich möchte gerne in meinem Script haben, dass mein script auf meiner festplatte C , falls vorhanden D nach dem Lied sucht, welches in meinem Script angegeben ist.
    Wenn ich dann z.B. mein Compiliertes Script starte, sagt er zuerst: Radios bitte vorher belegen.
    Links in der Tabelle habe ich schon Lieder angegeben und möchte, wenn z.B. das Lied FloRider - Right Round heißt , soll er auf dem Pc nach der Datei FloRider - Right Round.mp3 suchen und es dann in die lieder.ini eintragen, sodass das script weiß wo sich die datei befindet und nicht nocheinmal den pc durchsuchen muss.
    Wenn er Das Lied dann gefunden hat soll auch der Buttontext in der ersten Zeile geändert werden und zwar zum Liedtitel. :)
    Wenn das Script aber die Datei nicht findet, soll es einfach weiter nach anderen Liedern suchen ,weiter einfügen und bei den Liedern die es nicht gefunden hat hinschreiben : Lied nicht gefunden
    Ps: die lieder.ini habe ich in mein script per fileinstall installiert und wird immer automatisch nach C:\ gespeichert

  • Du möchest die Lieder vom PC anhand des Namens also suchen lassen?

    Das geht ganz einfach, aber ist recht sinnlos

    Spoiler anzeigen
    [autoit]

    $lied=FileFindRecursive( "D:", "Madcon - Beggin.mp3", 1, 0 )
    MsgBox(0,"", $lied)

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

    Func FileFindRecursive($szStartPath, $szFileName, $iFlag = 0, $iRetFormat = 0, $szDelim = @CRLF)
    Local $hFF, $szFindName, $szRetValue = ""

    If $iFlag = Default Then $iFlag = 0
    If $iRetFormat = Default Then $iRetFormat = 0
    If $szDelim = Default Then $szDelim = @CRLF

    If StringRight($szStartPath,1) <> "\" Then $szStartPath &= "\"

    If $iFlag < 2 Then
    $hFF = FileFindFirstFile($szStartPath & $szFileName)

    If $hFF <> -1 Then
    While True
    $szFindName = FileFindNextFile($hFF)
    If @error Then
    FileClose($hFF)
    ExitLoop
    EndIf
    If $szRetValue <> "" Then $szRetValue &= $szDelim
    $szRetValue &= $szStartPath & $szFindName
    WEnd
    EndIf
    EndIf
    $hFF = FileFindFirstFile($szStartPath & "*.*")

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

    If $hFF = -1 Then Return $szRetValue

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

    While True
    $szFindName = FileFindNextFile($hFF)
    If @error Then
    FileClose($hFF)
    ExitLoop
    EndIf

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

    If StringInStr(FileGetAttrib($szStartPath & $szFindName), "d") Then
    If ($szRetValue <> "") And (StringRight($szRetValue, StringLen($szDelim)) <> $szDelim) Then $szRetValue &= $szDelim
    If ($iFlag = 0) Or ($iFlag = 2) Then $szRetValue &= $szStartPath & $szFindName & "\" & $szDelim
    $szRetValue &= FileFindRecursive($szStartPath & $szFindName & "\", $szFileName, $iFlag, 0, $szDelim)
    EndIf
    WEnd

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

    If $iRetFormat = 0 Then
    Return $szRetValue
    Else
    Return StringSplit($szRetValue, $szDelim, 1)
    EndIf
    EndFunc ;==>FileFindRecursive

    [/autoit]

    Time: 76.921

    76 Sekunden um ein Lied zu finden.