VLC media player aktuelle Song löschen

Post a reply


In an effort to prevent automatic submissions, we require that you complete the following challenge.
Smilies
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :| :mrgreen: :geek: :ugeek: :arrow: :angel: :clap: :crazy: :eh: :lolno: :problem: :shh: :shifty: :sick: :silent: :think: :thumbup: :thumbdown: :salute: :wave: :wtf: :yawn: :facepalm: :bravo: :dance: :beard: :morebeard: :xmas: :HeHe: :trollface: :cookie: :rainbow: :monkeysee: :monkeysay: :happybday: :headwall: :offtopic: :superhappy: :terms: :beer:
View more smilies

BBCode is ON
[img] is OFF
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: VLC media player aktuelle Song löschen

Re: VLC media player aktuelle Song löschen

Post by KHA » 27 Jun 2019, 15:31

Dankeschön, funktioniert!
Super Idee mit der Loop.

Code: Select all

loop, 100 ; Steuerelemente durchgehen, um Pfad zu finden
{
    ControlSend,, ^c ; Inhalt kopieren
    if InStr(Clipboard, "\") ; Wenn Pfad ...
    {
        Pfad := Clipboard ; Pfad speichern
        break ; Schleife unterbrechen
    }
    ControlSend,, {Tab} ; Zum nächsten Steuerelement navigieren
}

Re: VLC media player aktuelle Song löschen

Post by Ragnar » 27 Jun 2019, 02:42

Code: Select all

#SingleInstance, force

SetTitleMatchMode, 2
SetKeyDelay,, 1 ; Erhöht die Zuverlässigkeit von ControlSend
CoordMode, Mouse, Client

#IfWinExist, VLC media player
+Delete:: ; Umschalt + Entfernen
ControlSend,, ^j, VLC media player
WinWait, Aktuelle Medieninformationen,, 1
if ErrorLevel
{
    Msgbox, Aufruf des Fensters "Aktuelle Medieninformationen" hat nicht funktioniert
    return
}
WinActivate
ClipSave := Clipboard ; Inhalt der Zwischenablage speichern
Clipboard = ; Zwischenablage leeren
loop, 100 ; Steuerelemente durchgehen, um Pfad zu finden
{
    ControlSend,, ^c ; Inhalt kopieren
    if InStr(Clipboard, "\") ; Wenn Pfad ...
    {
        Pfad := Clipboard ; Pfad speichern
        break ; Schleife unterbrechen
    }
    ControlSend,, {Tab} ; Zum nächsten Steuerelement navigieren
}
Clipboard := ClipSave ; Inhalt der zuvor gespeicherten Zwischenablage wiederherstellen
if not Pfad
{
    MsgBox, Pfad nicht gefunden
    return
}
WinClose
; ein N an VLC schicken, damit nächste Song abgespielt wird und zuvor abgespielte Titel zum Löschen freigegeben wird
ControlSend,, n, VLC media player
MsgBox, 4, Löschen, Soll %Pfad% gelöscht werden?
IfMsgBox Yes
{
    FileDelete, %Pfad%
    if ErrorLevel
        MsgBox, Es wurde keine Datei gelöscht!
}

VLC media player aktuelle Song löschen

Post by KHA » 26 Jun 2019, 17:06

Hallo,
bei VLC gibt es leider keine Möglichkeit aktuell laufende Song zu löschen, da dachte ich es mir, mit AHK könnte ich das nachrüsten.
Leider, komme ich da nicht wirklich weiter.

Code: Select all

#SingleInstance, force

SetTitleMatchMode, 2
CoordMode, Mouse , Client

#IfWinExist, VLC media player 
+Delete:: ;Umschalt + Entfernen

;Medieninformationen aufrufen um an den Pfad des aktuell gespielten Song zu kommen
;Strg+i oder Werkzeuge => Medieninformationen

;WinMenuSelectItem, VLC media player, , Werkzeuge, Medieninformationen ;funktioniert nicht
;WinMenuSelectItem, VLC media player, , 6&, 5& ;funktioniert nicht
;ControlSend , , {Ctrl Down}i{Ctrl Up}, VLC media player ;funktioniert nicht
ControlSend , , ^i, VLC media player ;Das hier funktioniert leider sporadisch
Sleep, 300
If !WinExist("Aktuelle Medieninformationen")
{
Msgbox, Aufruf des Fensters "Aktuelle Medieninformationen" hat nicht funktioniert
Return
}

;Wurde das Fenster "Aktuelle Medieninformationen" aufgerufen, dann 3x auf das Feld Ort Klicken um den Pfad zu markieren
/*
ControlClick,  x332 y69, Aktuelle Medieninformationen,,,, Pos
sleep, 200
ControlClick,  x332 y69, Aktuelle Medieninformationen,,,, Pos
sleep, 200
ControlClick,  x332 y69, Aktuelle Medieninformationen,,,, Pos
sleep, 200
*/
ControlClick, x100 y352, VLC media player,, Left, 3

Sleep, 300

ClipSave := % Clipboard ;Inhalt der Zwischenablage speichern
Clipboard = ;Zwischenablage leeren
ControlSend , , ^c, Aktuelle Medieninformationen ;Den Pfad in die zwischenablage Speichern
ClipWait, 2
if ErrorLevel
{
MsgBox, Es wurde nicht kopiert!
Return
}

;Fenster Aktuelle Medieninformationen schließen

if WinExist("Aktuelle Medieninformationen")
{
WinClose, Aktuelle Medieninformationen
}
Sleep, 300

;ein N an VLC schicken, damit nächste Song abgespielt wird und zuvor abgespielte Titel zum Löschen freigegeben wird

ControlSend , , n, VLC media player
Sleep, 300
FileDelete, %Clipboard%
if ErrorLevel
{
MsgBox, Es wurde keine Datei gelöscht!
}

Clipboard := % ClipSave ;Inhalt der zuvor gespeicherten Zwischenablage wiederherstellen.
Return
#IfWinExist
Habe versucht den Script so gut wie möglich zu kommentieren

Danke und schöne Grüße

Top