Freigeben über


Befehlszeichenfolgen

[Das feature, das dieser Seite zugeordnet ist, MCI-ist ein Legacyfeature. Es wurde von MediaPlayerersetzt. MediaPlayer- wurde für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code MediaPlayer- anstelle MCI-verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]

Verwenden Sie zum Senden eines Zeichenfolgenbefehls an ein MCI-Gerät die mciSendString--Funktion, die Parameter für den Zeichenfolgenbefehl und einen Puffer für alle zurückgegebenen Informationen enthält.

Die mciSendString Funktion gibt null zurück, wenn die Funktion erfolgreich verläuft. Wenn die Funktion fehlschlägt, enthält das Wort mit niedriger Reihenfolge des Rückgabewerts einen Fehlercode. Sie können diesen Fehlercode an die mciGetErrorString--Funktion übergeben, um eine Textbeschreibung des Fehlers abzurufen.

Syntax von Befehlszeichenfolgen

MCI-Befehlszeichenfolgen verwenden eine konsistente Verb-Object-Modifier-Syntax. Jede Befehlszeichenfolge enthält einen Befehl, einen Gerätebezeichner und Befehlsargumente. Argumente sind für einige Befehle optional und für andere erforderlich.

Eine Befehlszeichenfolge weist die folgende Form auf:

Befehl device_id Argumente

Diese Komponenten enthalten die folgenden Informationen:

  • Der -Befehl gibt einen MCI-Befehl an, z. B. öffnen, schließen oder wiedergeben.

  • Die device_id identifiziert eine Instanz eines MCI-Treibers. Die device_id wird erstellt, wenn das Gerät geöffnet wird.

  • Die Argumente die vom Befehl verwendeten Flags und Variablen angeben. Flags sind Schlüsselwörter, die mit dem MCI-Befehl erkannt werden. Variablen sind Zahlen oder Zeichenfolgen, die für den MCI-Befehl oder das Flag gelten.

    Beispielsweise verwendet der -Befehl die Argumente "von Position" und "Position ", um die Positionen anzugeben, an denen das Spiel beginnen und enden soll. Sie können die mit einem Befehl verwendeten Flags in beliebiger Reihenfolge auflisten. Wenn Sie ein Flag verwenden, dem eine Variable zugeordnet ist, müssen Sie einen Wert für die Variable angeben.

    Nicht angegebene (und optionale) Befehlsargumente gehen von einem Standardwert aus.

Die folgende Beispielfunktion sendet die Wiedergabe Befehls mit den Flags "von" und "an".

BOOL PlayFromTo(LPTSTR lpstrAlias, DWORD dwFrom, DWORD dwTo) 
{ 
    TCHAR achCommandBuff[128]; 
    int result;
    MCIERROR err;

    // Form the command string.
    result = _stprintf_s(
        achCommandBuff, 
        TEXT("play %s from %u to %u"), 
        lpstrAlias, dwFrom, dwTo); 

    if (result == -1)
    {
        return FALSE;
    }

    // Send the command string.
    err = mciSendString(achCommandBuff, NULL, 0, NULL); 
    if (err != 0)
    {
        return FALSE;
    }

    return TRUE;
} 

Datentypen für Befehlsvariablen

Sie können die folgenden Datentypen für die Variablen in einer Befehlszeichenfolge verwenden.

Datentyp Beschreibung
Streichinstrumente Zeichenfolgendatentypen werden durch führende und nachfolgende Leerzeichen und Anführungszeichen getrennt. MCI entfernt einfache Anführungszeichen aus einer Zeichenfolge. Wenn Sie ein Anführungszeichen in eine Zeichenfolge einfügen möchten, verwenden Sie eine Reihe von zwei Anführungszeichen, in die Sie Das Anführungszeichen einbetten möchten. Wenn Sie eine leere Zeichenfolge verwenden möchten, verwenden Sie zwei Anführungszeichen, die durch führende und nachfolgende Leerzeichen getrennt sind.
Signierte lange ganze Zahlen Signierte ganzzahlige Datentypen werden durch führende und nachfolgende Leerzeichen getrennt. Sofern nicht anders angegeben, können ganze Zahlen positiv oder negativ sein. Wenn Sie negative ganze Zahlen verwenden, sollten Sie das Minuszeichen und die erste Ziffer nicht durch ein Leerzeichen trennen.
Rechtecke Rechteck-Datentypen sind eine sortierte Liste mit vier signierten Kurzwerten. Leerzeichen trennen diesen Datentyp und trennen jede ganze Zahl in der Liste.