Random file aus bestimmten Ordner öffnen

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von cyberworm83.

    Random file aus bestimmten Ordner öffnen

    Hi alle zusammen.

    Mein vorhaben ist glaube / hoffe ich ein leichtes.

    also angenommen... ich habe eine Ordner auf dem Destkop, mit zig mp3's.. ich möchte einen button in meiner Form haben, der eine zufällige Mp3 aus diesem Ordner öffnet.

    ich habe es mit
    process.start "C:\benutzer\destkop\musikordner\*.*" aber so leicht ist es dann wohl doch nicht

    ich dachte vielleicht liegt es an den extensions aber
    process.start "C:\benutzer\destkop\musikordner\*.mp3" geht auch nicht.

    process.start "C:\benutzer\destkop\musikordner\lied.mp3" funktioniert...
    da gibt es keine fehlermeldung das eine datei nicht gefunden wurde...

    ich hoffe ihr könnt mir helfen... zu bedenken sei evtl. noch, das nicht alle dateien mp3 sind, (wma, ogg, usw. gibts ja auch noch)

    vielen vielen dank im vorraus, bis dahin

    d.
    Dateien per GetFiles sammeln (evt. SearchPatterns übergeben, fall nur nach bestimmten Datentypen gesucht werden soll, sonst für alle Dateien "*.*") und dann eine Zufallszahl zwischen 0 und der Anzahl generieren. Array(Zufallszahl) ist dann die zufällig gewählte Datei. Bsp:

    VB.NET-Quellcode

    1. Dim files() As String = IO.Directory.Getfiles("C:\benutzer\desktop\musikordner")
    2. Dim r As New Random()
    3. Dim zufallspath As String = files(r.Next(0, files.Length-1))
    Beispiel ist jetzt angefügt... nächstes mal gibt´s aber keinen fertigen Code. Es gibt auch eine Suchfunktion und sowohl IntelliSense als auch die MSDN können unglaublich hilfreich sein. Den Ansatz hattest du ja eigentlich...

    Edit: Mist jetzt macht mein Post keinen Sinn mehr :D
    uhm... ich hab das jetzt so.... aber es geht immer noch nicht.. tut mir leid, ich bin noch n anfänger.. wenn überhaupt.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    3. Dim files() As String = IO.Directory.GetFiles("C:\Users\!\Desktop\Neuer Ordner (2)")
    4. Dim r As New Random()
    5. Dim zufallspath As String = files(r.Next(0, files.Length - 1))
    6. Process.Start("C:\Users\!\Desktop\Neuer Ordner (2)\*.*")
    7. End Sub
    8. End Class
    Ich habe mal zwei Fragen.
    ich baue gerade ein Programm für unsere Tochter für Musik Ordner.
    Das oben erwähnte funktioniert super habe aber zwei Fragen dazu.
    erstens: ist es möglich die musikdatei abspielen zu lassen OHNE das sich das abspiel Programm öffnet (quasi das nur die musik abgespielt wird)
    zweitens: ich habe in dem ordner ca 20 Musik dateien. diese sollen nacheinander oder besser per random abgespielt werden statt einzeln.
    Ich würde mal sagen, mach dafür mal nen eigenen Thread auf. Der Hier ist ja nu schon paar Jahre alt.
    Prinzipiell geht es aber... ja...
    Gibt DLLs um Audiodateien abzuspielen.
    Bass.Dll Tutorial
    Prozess.Start öffnet ja einfach nur ne Datei mitm bei Windows hinterlegten Standardtool.

    Und was die Geschichte mit dem Random angeht... Du meinst ne Shuffle Funktion ohne Wiederholung...?!
    Auch das geht. Musst dir halt nur merken was du schon wiedergegeben hast... zB. kannst dir ne List(Of Object) anlegen die aus Objekten besteht, welche alle relevanten Informationen der einzelnen Musikstücke besteht und noch zusätzlich nem Flag (gespielt). Nur ne Idee... Vielleicht gibt es in den jeweiligen DLLs auch schon ne Funktion dafür.
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Warum nicht einen fertigen Player verwenden? Muss ja nicht immer gleich dieses Schlachtschiff von iTunes sein - Shuffle, Wiederholung und ähnliche Funktionen konnte bisher noch jedes Programm. Und das über Ordner hinweg.

    Ich verwende sehr gerne tomahawk-player.org/ - verschiedene Resolver binden lokale und entfernte Quellen ein.
    @noBlubb.. weil wir hier in einem Programmierforum sind, und der Fragensteller nunmal etwas programmieren will?
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Wollte extra kein neues aufmachen aber ok.
    In welche Kategorie kann ich das packen? Ich mache direkt mal ein oder zwei Screenshots wie ich mir das vorgestellt hatte, weil wie gesagt soll für unsere 5 Jährige Tochter sein und sie muss noch nich so viel am PC machen können.
    Deswegen ein Programm wo sie ihre Musik drauf hat evtl (durch Elterliche freigabe) mal nen Film.