none
System.Media.SoundPlayer vs. WMPLib.WindowsMediaPlayer RRS feed

  • Frage

  • Hallo,

    wir müssen in einem C# Programm im Hintergrund eine Audio-Datei abspielen. Die Frage ist, was man dafür verwenden kann?  

    Ich habe die Klassen System.Media.SoundPlayer und  WMPLib.WindowsMediaPlayer gefunden und WindowsMediaPlayer  bietet mehr Funktionalität als Soundplayer.

    Ist WindowsMediaPlayer-COM Objekt auf alle Betriebssystemen vorhanden? Muss man WindowsMediaPlayer zusätzlich installieren?  

     

    Danke.

    Dienstag, 9. Juni 2015 09:11

Antworten

Alle Antworten

  • Hallo,

    vllt. hilft dir ja der folgende Link --> https://msdn.microsoft.com/de-de/library/bb383890(v=vs.90).aspx

    Grüße

    Dienstag, 9. Juni 2015 09:26
  • Hallo,

    Danke für die Antwort. Wie man die Klassen verwenden kann, ist es klar. Ich weiß noch nicht, welche Klasse ich nehmen soll.

    Nachteile des SoundPlayers:

    -          Spielt keine mp3-Dateien ab.

    Nachteile des WindowsMediaPlayers:

    -          Ist nicht auf alle Windows-Betriebssystemen  vorhanden  (ist das so?).

    Grüße

    Dienstag, 9. Juni 2015 09:38
  • Hallo,

    meiner Meinung nach ist der Windows Media Player ein fester Bestandteil eines Windows-Betriebssystems und somit auch immer vorhanden (auch laut Wiki -WMP).

    Somit müsste ja eigentlich auch überall die WMPLib.WindowsMediaPlayer  Klasse verfügbar sein.


    • Bearbeitet cap77 Dienstag, 9. Juni 2015 09:54
    Dienstag, 9. Juni 2015 09:52
  • Hallo,

    laut Wiki WMP:

    Der Media Player wird mit Microsoft Windows ausgeliefert. Diese Vertriebsart wurde von den Wettbewerbsschützern der Europäischen Union als Ausnutzung von Microsofts Quasi-Monopol auf dem Betriebssystemmarkt missbilligt. Als Reaktion auf die Forderung nach Entkoppelung des Media Player vom Betriebssystem bietet Microsoft Windows-Versionen ohne Media Player an, wie etwa Windows XP Home Edition N,[3] Windows Vista Home Basic N,[4] Windows Vista Business N[5] oder Windows 7 Home Premium N.

    Grüße

    Dienstag, 9. Juni 2015 10:14
  • Hallo,

    du hast Recht ... da habe ich wohl nicht weit genug gelesen.

    Allerding steht auch im nächsten Satz "Eine vollständige Deinstallation des Media Players ist nicht möglich, da das Programm tief in das System integriert ist."

    Jetzt ist natürlich die Frage, was mit vollständig gemeint ist?

    Müsste man vllt. mal mit einer der oben genannten Versionen testen.

    Dienstag, 9. Juni 2015 11:01
  • Hallo,

    ja, das ist die Frage, ob COM Objekt WindowsMediaPlayer immer auf dem Windows-Betriebssystem vorinstalliert ist. Leider habe ich keinen Windows 7 Home Premium N das zu prüfen.

    Grüße

    Dienstag, 9. Juni 2015 15:50
  • Hallo zusammen,

    der WMP ist nicht immer auf jedem System vorhanden. Die Dateien sind zwar teilweise da, enthalten aber nicht den nötigen Code oder aber die Codecs fehlen.

    Die SoundPlayer Klasse kann auch teilweise davon betroffen sein, da diese teilweise auch nur auf den WMP zurück greift. Sie ist aber besser in .NET verankert und macht nicht die COM typischen Probleme. Ich empfehle dir daher die SoundPlayer Klasse.


    Tom Lambert - .NET (C#) MVP
    Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
    Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
    Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets

    • Als Antwort markiert Iso7 Mittwoch, 10. Juni 2015 11:53
    Dienstag, 9. Juni 2015 23:58
    Moderator
  • Hallo Tom,

    Ich danke Dir für die ausführliche Antwort! Ich habe noch eine Frage:

    Wie kann man in C# Programm prüfen, ob ein COM Objekt auf dem System installiert wurde oder nicht?

    Grüße


    • Bearbeitet Iso7 Samstag, 13. Juni 2015 11:02
    Mittwoch, 10. Juni 2015 08:46