Freigeben über


IWMDMDeviceControl::GetCapabilities-Methode (mswmdm.h)

Die GetCapabilities-Methode ruft die Gerätefunktionen ab, um zu bestimmen, welche Vorgänge das Gerät ausführen kann. Die Funktionen beschreiben die Methoden des Gerätesteuerelements, die vom Mediengerät unterstützt werden.

Syntax

HRESULT GetCapabilities(
  [out] DWORD *pdwCapabilitiesMask
);

Parameter

[out] pdwCapabilitiesMask

Zeiger auf ein DWORD , das die Funktionen des Geräts angibt. Die folgenden Flags können in dieser Variablen zurückgegeben werden.

Flag Beschreibung
WMDM_DEVICECAP_CANPLAY Das Mediengerät kann MP3-Audio wiedergeben.
WMDM_DEVICECAP_CANSTREAMPLAY Das Mediengerät kann Audiostreaming direkt vom Hostcomputer wiedergeben.
WMDM_DEVICECAP_CANRECORD Das Mediengerät kann Audio aufzeichnen.
WMDM_DEVICECAP_CANSTREAMRECORD Das Mediengerät kann Streaming-Audio direkt auf dem Hostcomputer aufzeichnen.
WMDM_DEVICECAP_CANPAUSE Das Mediengerät kann während der Wiedergabe- oder Aufzeichnungsvorgänge anhalten.
WMDM_DEVICECAP_CANRESUME Das Mediengerät kann einen angehaltenen Vorgang fortsetzen.
WMDM_DEVICECAP_CANSTOP Das Mediengerät kann die Wiedergabe vor dem Ende einer Datei beenden.
WMDM_DEVICECAP_CANSEEK Das Mediengerät kann eine andere Position als den Anfang einer Datei suchen.
WMDM_DEVICECAP_HASSECURECLOCK Das Mediengerät verfügt über eine sichere Uhr.

Rückgabewert

Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich ausgeführt.
E_INVALIDARG
Der pdwCapabilitiesMask-Parameter ist ein ungültiger oder NULL-Zeiger .
E_FAIL
Es ist ein unbekannter Fehler aufgetreten.

Hinweise

Derzeit melden nicht viele Geräte ihre Funktionen ordnungsgemäß.

Beispiele

Der folgende C++-Code ruft die Gerätefunktionen ab.


// Examine the device capabilities.
// Use some of these to enable or disable the application's
// user interface elements.
CComQIPtr<IWMDMDeviceControl> pDeviceControl(pIWMDMDevice);
if (pDeviceControl != NULL)
{
    DWORD caps = 0;
    hr = pDeviceControl->GetCapabilities(&caps);
    if (caps & WMDM_DEVICECAP_CANPLAY)
    {
        // TODO: Display a message indicating that the media device can play MP3 audio.
    }
    if (caps & WMDM_DEVICECAP_CANSTREAMPLAY)
    {
        // TODO: Display a message that the device can play audio directly from the host computer.
    }
    if (caps & WMDM_DEVICECAP_CANRECORD)
    {
        // TODO: Display a message that the device can record audio.
    }
    if (caps & WMDM_DEVICECAP_CANSTREAMRECORD)
    {
        // TODO: Display a message that the media device can record 
        // streaming audio directly to the host computer.
    }
    if (caps & WMDM_DEVICECAP_CANPAUSE)
    {
        // TODO: Display a message that the device can pause during play or record operations.
    }
    if (caps & WMDM_DEVICECAP_CANRESUME)
    {
        // TODO: Display a message that the device can resume an operation that was paused.
    }
    if (caps & WMDM_DEVICECAP_CANSTOP)
    {
        // TODO: Display a message that the device can stop playing before the end of a file.
    }
    if (caps & WMDM_DEVICECAP_CANSEEK)
    {
        // TODO: Display a message that the device can seek to a position 
        // other than the beginning of the file.
    }
    if (caps & WMDM_DEVICECAP_HASSECURECLOCK)
    {
        // TODO: Display a message indicating that the device has a secure clock.
    }
}

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile mswmdm.h
Bibliothek Mssachlp.lib

Weitere Informationen

IWMDMDeviceControl-Schnittstelle

IWMDMObjectInfo-Schnittstelle