ISCPSecureExchange3::TransferContainerDataOnClearChannel-Methode (mswmdm.h)
Die TransferContainerDataOnClearChannel-Methode überträgt Containerdateidaten über den clear-Kanal an den Inhaltsanbieter. Der Inhaltsanbieter teilt den Container intern auf und meldet, welche Teile des Inhalts verfügbar sind, wenn sie aus dem Container extrahiert werden.
Diese Methode ist identisch mit ISCPSecureExchange::TransferContainerData , mit der Ausnahme, dass die an diese Methode übergebenen Parameter nicht verschlüsselt sind. Folglich ist diese Methode effizienter.
Syntax
HRESULT TransferContainerDataOnClearChannel(
IMDSPDevice *pDevice,
BYTE *pData,
DWORD dwSize,
IWMDMProgress3 *pProgressCallback,
UINT *pfuReadyFlags
);
Parameter
pDevice
Zeiger auf ein Geräteobjekt.
pData
Zeiger auf einen Puffer, der die aktuellen Daten enthält, die aus der Containerdatei übertragen werden.
dwSize
Enthält die Anzahl der Bytes im Puffer.
pProgressCallback
Statusrückruf, bei dem der Inhaltsanbieter den Fortschritt aller Schritte melden kann, die er möglicherweise ausführen muss. Der Schritt wird durch den EventId-Parameter der IWMDMProgress3-Methoden identifiziert.
pfuReadyFlags
Flag, das angibt, welche Teile der Containerdatei gelesen werden können. Dieser Parameter ist im Authentifizierungscode der Ausgabenachricht enthalten. Die folgenden Flags geben an, was bereit ist.
Wert | Bedeutung |
---|---|
|
Daten des Objekts sind durch Aufrufen der GetObjectDataOnClearChannel-Methode verfügbar. |
|
Der Inhaltsanbieter hat festgestellt, dass keine weitere Verarbeitung und/oder Änderung der übertragenen Datei erforderlich ist. Windows Media-Geräte-Manager können den Rest der Datei direkt auf das Gerät übertragen. |
Rückgabewert
Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn die Methode fehlschlägt, wird ein HRESULT-Fehlercode zurückgegeben.
Rückgabecode | Beschreibung |
---|---|
|
Der Aufrufer ist nicht autorisiert, diese Schnittstelle zu verwenden. |
|
Der Aufrufer verfügt nicht über die erforderlichen Rechte, um den angeforderten Vorgang auszuführen. |
|
Der Nachrichtenauthentifizierungscode ist ungültig. |
|
Fehler bei der Methode. Beenden Sie die Interaktion mit dem Inhaltsanbieter. |
|
Ein Parameter ist ungültig oder ein NULL-Zeiger . |
|
Es ist ein unbekannter Fehler aufgetreten. |
Hinweise
Windows Media Geräte-Manager ruft diese Methode wiederholt auf und überträgt Daten aus der Containerdatei an den Inhaltsanbieter. Windows Media Geräte-Manager ruft schließlich diese Methode auf, wobei dwSize auf 0 festgelegt ist, um anzugeben, dass keine weiteren Daten übertragen werden. Während der Inhaltsanbieter die Daten sammelt und die verschiedenen Objekte daraus extrahiert, meldet er Windows Media Geräte-Manager welche Objekte nach jedem Aufruf verfügbar sind. Wenn keine Objekte verfügbar sind, gibt der Inhaltsanbieter S_OK zurück, wobei der pfuReadyFlags-Parameter auf Null festgelegt ist. Wenn der Inhaltsanbieter festgestellt hat, dass keine weitere Verarbeitung und/oder Änderung der übertragenen Datei erforderlich ist, wird das Flag WMDM_SCP_NO_MORE_CHANGES zurückgegeben. Windows Media Geräte-Manager können dann den Rest der Datei direkt auf das Gerät übertragen.
Objektdaten werden vom Inhaltsanbieter übertragen, indem die GetObjectDataOnClearChannel-Methode aufgerufen wird . Windows Media Geräte-Manager ruft GetObjectDataOnClearChannel wiederholt auf, bis im dritten Parameter pdwsize null zurückgegeben wird.
Die ISCPSecureExchange::TransferComplete-Methode (oder TransferCompleteForDevice, wenn eine Sitzung aktiv ist) wird von Windows Media Geräte-Manager aufgerufen, um das Ende einer Datenübertragung zu signalisieren.
Windows Media Geräte-Manager übergibt den von der Anwendung bereitgestellten Statusrückruf an den Inhaltsanbieter im pProgressCallback-Parameter. Der Inhaltsanbieter kann diesen Parameter verwenden, um statusbenachrichtigungen für alle auszuführenden Schritte bereitzustellen. Der Schritt selbst wird durch EventId identifiziert, bei dem es sich um den ersten Parameter der Methoden von IWMDMProgress3 handelt. Eine bestimmte Inhaltsanbieterimplementierung definiert EventId-Werte für zu verwendende Anwendungen.
Diese Methode ist identisch mit ISCPSecureExchange::TransferContainerData , mit der Ausnahme, dass die an diese Methode übergebenen Parameter nicht verschlüsselt sind. Folglich ist diese Methode effizienter.
Requirements (Anforderungen)
Zielplattform | Windows |
Kopfzeile | mswmdm.h |
Bibliothek | Mssachlp.lib |