Winamp Steuerung - Probleme

  • Hallo,
    habe mit der Winamp Steuerung 2 Probleme:

    1.) Wann ich die Playlist öffnen lasse liest er mir 1 - Aktueller Titel aus statt 1 - Letzter Playlisttitel

    2.) Da ich eine LED Laufschrift eingebaut habe und wann die aktualisiert wird flackert manches zb icons, labels, etc.

    In der rar datei liegt folgendes bei:
    * au3
    * icons
    * Includes [Winamp_Library.au3, LEDTXT.au3]

    --- EDIT ---
    Kann die au3 nicht als Spoiler anhängen danach löscht es mir den Ganzen Text von dem Beitrag...


    --- EDIT ---
    Flackern gelöst danke Mars

    Problem 1 auch gelöst:

    Spoiler anzeigen
    [autoit]

    ;If Not @error Then $aRet_Array[0][0] = $aCurrent_Track[0] + 1 ;Deaktiviert damit alle Ausgelesen werden!

    [/autoit][autoit]

    Func _Winamp_GetPlayListToArray($h_Winamp_Wnd = 0)
    Local $aRet_Array[1][1]
    Local $hWinamp, $iWinamp_PID, $iNull, $pAddress_Title, $pAddress_FPath, $hUser32Dll, $iNumTracks, $aCurrent_Track

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

    $hWinamp = WinGetHandle($sWINAMP_CLASS)
    If IsHWnd($h_Winamp_Wnd) Then $hWinamp = $h_Winamp_Wnd

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

    If Not IsHWnd($hWinamp) Then Return SetError(1, 0, 0)

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

    $iWinamp_PID = WinGetProcess($hWinamp)

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

    ;Return number of tracks in playlist
    $iNumTracks = DllCall("user32.dll", "int", "SendMessage", "hwnd", $hWinamp, "int", _
    $WM_WA_IPC, "int", 0, "int", $IPC_GETLISTLENGTH)
    If @error Then Return SetError(2, 0, 0)

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

    $iNumTracks = $iNumTracks[0]

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

    $aRet_Array[0][0] = $iNumTracks
    ReDim $aRet_Array[$iNumTracks + 1][2]

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

    ;Return current playlist position (zero based)
    $aCurrent_Track = DllCall("user32.dll", "int", "SendMessage", _
    "hwnd", $hWinamp, "int", $WM_WA_IPC, "int", 0, "int", $IPC_GETLISTPOS)

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

    ;If Not @error Then $aRet_Array[0][0] = $aCurrent_Track[0] + 1 ;Deaktiviert damit alle Ausgelesen werden!

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

    ;IMPORTANT - First song will be skipped without this
    $iNull = __API_GetInfoByAddress(0, 0)
    If @error Then Return SetError(3, 0, 0)

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

    $hUser32Dll = DllOpen("user32.dll")
    If $hUser32Dll = -1 Then Return SetError(4, 0, 0)

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

    For $i = 0 To $iNumTracks - 1
    $pAddress_Title = 0
    $pAddress_FPath = 0

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

    ;Return memory address (pointer) of track title
    $pAddress_Title = DllCall($hUser32Dll, "int", "SendMessage", _
    "hwnd", $hWinamp, "int", $WM_WA_IPC, "int", $i, "int", $IPC_GET_PLAYLISTTITLE)
    If @error Then ContinueLoop

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

    $aRet_Array[$i + 1][0] = __API_GetInfoByAddress($pAddress_Title[0], $iWinamp_PID)
    If @error Then Return SetError(3, 0, 0)

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

    ;Return memory address (pointer) of track file path
    $pAddress_FPath = DllCall($hUser32Dll, "int", "SendMessage", _
    "hwnd", $hWinamp, "int", $WM_WA_IPC, "int", $i, "int", $IPC_GETPLAYLISTFILEW)
    If @error Then ContinueLoop

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

    $aRet_Array[$i + 1][1] = __API_GetInfoByAddress($pAddress_FPath[0], $iWinamp_PID)
    If @error Then Return SetError(3, 0, 0)
    Next

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

    DllClose($hUser32Dll)

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

    Return $aRet_Array
    EndFunc ;==>_Winamp_GetPlayListToArray

    [/autoit]
  • Wie wäre es mit einer Problem-Beschreibung? 8|

    Mfg

    There's a joke that C has the speed and efficieny of assembly language combined with readability of....assembly language. In other words, it's just a glorified assembly language. - Teh Interwebz

    C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, you blow off your whole leg. - Bjarne Stroustrup
    Genie zu sein, bedeutet für mich, alles zu tun, was ich will. - Klaus Kinski

  • Wie wäre es mit einer Problem-Beschreibung? 8|

    Mfg


    hatte es mir gelöscht xD bzw hatte es geschrieben aber nicht übernommen ^^
    source kommt noch wollte nur schauen ober es jetzt übernommen hat ^^