Freigeben über


Klassifizierungen von MCI-Befehlen

[Das dieser Seite zugeordnete Feature MCI ist ein Legacyfeature. Es wurde von MediaPlayer abgelöst. MediaPlayer wurde für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer anstelle von MCI verwendet. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

MCI definiert vier Befehlsklassifizierungen: system, required, basic und extended. In der folgenden Liste werden diese Befehlsklassifizierungen beschrieben:

  • Systembefehle werden direkt von MCI und nicht vom Treiber verarbeitet.
  • Erforderliche Befehle werden vom Treiber verarbeitet. Alle MCI-Treiber müssen die erforderlichen Befehle und Flags unterstützen.
  • Grundlegende Befehle (oder optionale Befehle) werden von einigen Geräten verwendet. Wenn ein Gerät einen einfachen Befehl unterstützt, muss es einen definierten Satz von Flags für diesen Befehl unterstützen.
  • Erweiterte Befehle sind spezifisch für einen Gerätetyp oder Treiber. Erweiterte Befehle umfassen Befehle wie put (MCI_PUT) und where -Befehle (MCI_WHERE) für die Digitalvideo- und Überlagerungsgerätetypen sowie Erweiterungen zu vorhandenen Befehlen (z. B. das "stretch"-Flag des Befehls status (MCI_STATUS) für den Überlagerungsgerätetyp).

System- und erforderliche Befehle sind zwar der Mindestbefehlssatz für jeden MCI-Treiber, aber grundlegende und erweiterte Befehle werden nicht von allen Treibern unterstützt. Ihre Anwendung kann immer Systembefehle und erforderliche Befehle und deren Flags verwenden. Wenn sie jedoch einen einfachen oder erweiterten Befehl oder ein Flag verwenden muss, sollte sie zuerst den Treiber mithilfe des Funktionsbefehls (MCI_GETDEVCAPS) abfragen. In den folgenden Abschnitten werden die spezifischen Befehle in jeder Kategorie zusammengefasst.

Systembefehle

MCI verarbeitet die folgenden Systembefehle direkt, anstatt sie an MCI-Geräte zu übergeben.

String `Message` BESCHREIBUNG
Brechen MCI_BREAK Legt einen Umbruchschlüssel für ein MCI-Gerät fest.
Sysinfo MCI_SYSINFO Gibt Informationen zu MCI-Geräten zurück.

 

Erforderliche Befehle

Alle MCI-Geräte unterstützen die folgenden erforderlichen Befehle.

String `Message` BESCHREIBUNG
Fähigkeit MCI_GETDEVCAPS Ruft die Funktionen eines Geräts ab.
Schließen MCI_CLOSE Schließt das Gerät.
info MCI_INFO Ruft Textinformationen von einem Gerät ab.
open MCI_OPEN Initialisiert das Gerät.
status MCI_STATUS Ruft status Informationen vom Gerät ab. Einige flags dieses Befehls sind nicht erforderlich, daher handelt es sich auch um einen einfachen Befehl.

 

Geräte müssen auch einen Standardsatz von Befehlsflags für die erforderlichen Befehle unterstützen.

Grundlegende Befehle

In der folgenden Liste sind die grundlegenden Befehle zusammengefasst. Die Verwendung dieser Befehle durch ein MCI-Gerät ist optional.

String `Message` BESCHREIBUNG
Laden MCI_LOAD Lädt Daten aus einer Datei.
anhalten MCI_PAUSE Beendet die Wiedergabe. Die Wiedergabe oder Aufzeichnung kann an der aktuellen Position fortgesetzt werden.
play MCI_PLAY Beginnt mit der Übertragung von Ausgabedaten.
Aufzeichnung MCI_RECORD Startet die Aufzeichnung von Eingabedaten.
Fortsetzen MCI_RESUME Setzt die Wiedergabe oder Aufzeichnung auf einem angehaltenen Gerät fort.
Speichern MCI_SAVE Speichert Daten in einer Datenträgerdatei.
Suchen MCI_SEEK Sucht vorwärts oder rückwärts.
Festgelegt MCI_SET Legt den Betriebszustand des Geräts fest.
status MCI-STATUS Ruft status Informationen zum Gerät ab. Dies ist auch ein erforderlicher Befehl. Da einige seiner Flags nicht erforderlich sind, ist es auch hier aufgeführt. (Die optionalen Elemente unterstützen Geräte, die lineare Medien mit identifizierbaren Positionen verwenden.)
Stoppen MCI_STOP Beendet die Wiedergabe.

 

Wenn ein Treiber einen einfachen Befehl unterstützt, muss er auch einen Standardsatz von Flags für den Befehl unterstützen.

Erweiterte Befehle

Einige MCI-Geräte verfügen über zusätzliche Befehle oder fügen vorhandenen Befehlen Flags hinzu. Während einige erweiterte Befehle nur für einen bestimmten Gerätetreiber gelten, gelten die meisten für alle Treiber eines bestimmten Gerätetyps. Beispielsweise erweitert der Befehlssatz für den Sequencer-Gerätetyp den Befehl set (MCI_SET), um Zeitformate hinzuzufügen, die von MIDI-Sequenzern benötigt werden.

Sie sollten nicht davon ausgehen, dass das Gerät die erweiterten Befehle oder Flags unterstützt. Sie können den Funktionsbefehl (MCI_GETDEVCAPS) verwenden, um zu bestimmen, ob ein bestimmtes Feature unterstützt wird, und Ihre Anwendung sollte bereit sein, die Rückgabewerte "nicht unterstützter Befehl" oder "nicht unterstützte Funktion" zu verarbeiten.

Die folgenden erweiterten Befehle sind mit den aufgeführten Gerätetypen verfügbar.

String Nachricht Gerätetypen BESCHREIBUNG
KONFIGURIEREN MCI_CONFIGURE digitalvideo Zeigt ein Konfigurationsdialogfeld an.
Hinweis MCI_CUE digitalvideo, waveaudio Bereitet sich auf die Wiedergabe oder Aufzeichnung vor.
Löschen MCI_DELETE Waveaudio Löscht ein Datensegment aus der Mediendatei.
escape MCI_ESCAPE videodisc Sendet benutzerdefinierte Informationen an ein Gerät.
Einfrieren MCI_FREEZE overlay Deaktiviert die Videoaufnahme für den Framepuffer.
put MCI PUT digitalvideo, overlay Definiert die Quell-, Ziel- und Framefenster.
Erkennen MCI_REALIZE digitalvideo Weist das Gerät an, seine Palette in einem Gerätekontext des angezeigten Fensters auszuwählen und zu realisieren.
Setaudio MCI_ SETAUDIO digitalvideo Legt Audioparameter für Video fest.
setvideo MCI_ SETVIDEO digitalvideo Legt Videoparameter fest.
signal MCI_SIGNAL digitalvideo Identifiziert eine angegebene Position mit einem Signal.
drehen MCI_SPIN videodisc Startet das Drehen der Scheibe oder stoppt das Drehen der Scheibe.
Schritt MCI_STEP digitalvideo, videodisc Führt die Wiedergabe eines oder mehrerer Frames nach vorne oder umgekehrt aus.
Auftauen MCI_UNFREEZE overlay Ermöglicht dem Framepuffer das Abrufen von Videodaten.
aktualisieren MCI_UPDATE digitalvideo Übermalt den aktuellen Frame erneut in den Gerätekontext.
Wo MCI WHERE digitalvideo, overlay Ruft das Rechteck ab, das die Quelle, das Ziel oder den Rahmenbereich angibt.
Fenster MCI_WINDOW digitalvideo, overlay Steuert das Anzeigefenster.