Freigeben über


IMFHttpDownloadSession::CreateRequest-Methode (mfidl.h)

Wird von Microsoft Media Foundation aufgerufen, um ein Objekt zu erstellen, das die IMFHttpDownloadRequestSchnittstelle implementiert, die zum Senden einer einzelnen HTTP- oder HTTPS-Anforderung verwendet wird. Da mehrere Anforderungen erforderlich sein können, um eine Ressource vollständig herunterzuladen, kann Media Foundation CreateRequest mehrmals in derselben IMFHttpDownloadSession-Instanz aufrufen. Media Foundation verwendet jede IMFHttpDownloadRequest-Instanz nur für eine einzelne Anforderung.

Syntax

HRESULT CreateRequest(
  [in]           LPCWSTR                szObjectName,
  [in]           BOOL                   fBypassProxyCache,
  [in]           BOOL                   fSecure,
  [in, optional] LPCWSTR                szVerb,
  [in, optional] LPCWSTR                szReferrer,
                 IMFHttpDownloadRequest **ppRequest
);

Parameter

[in] szObjectName

Zeigen Sie auf eine Zeichenfolge, die den Namen der Zielressource des angegebenen HTTP-Verbs enthält. Dies ist in der Regel ein Dateiname, ein ausführbares Modul oder ein Suchbezeichner. Die Zielressource beginnt immer mit einem Schrägstrich und enthält alle Abfragezeichenfolgen, die in der URL enthalten waren.

[in] fBypassProxyCache

Wenn dieser Wert auf TRUE festgelegt ist, wird angegeben, dass die Anforderung an den ursprünglichen Server weitergeleitet werden soll, anstatt eine zwischengespeicherte Version einer Ressource von einem Proxyserver zu senden. Wenn dieses Flag auf TRUE festgelegt ist, sollte der Anforderung ein Header "Pragma: no-cache" hinzugefügt werden. Beim Erstellen einer HTTP/1.1-Anforderung sollte auch ein "Cache-Control: no-cache" hinzugefügt werden.

[in] fSecure

Wenn dieser Wert auf TRUE festgelegt ist, wird ggf. die sichere Variante des Protokolls verwendet. Wenn beispielsweise die IMFHttpDownloadSession für HTTP/HTTPS gilt, bewirkt das Festlegen von "fSecure " auf "TRUE", dass die Anforderung HTTPS verwendet. Andernfalls wird die unsichere Variante des Protokolls (in diesem Beispiel HTTP) verwendet.

[in, optional] szVerb

Zeigen Sie auf eine Zeichenfolge, die das HTTP-Verb enthält, das in der Anforderung verwendet werden soll. Wenn dieser Parameter NULL ist, verwendet die Funktion GET als HTTP-Verb.

Anmerkung Diese Zeichenfolge sollte groß geschrieben sein. Viele Server behandeln HTTP-Verben als Groß-/Kleinschreibung, und die Internet Engineering Task Force (IETF)-Anforderungen für Kommentare (RFCs) verwenden diese Verben nur mit Großbuchstaben.
 

[in, optional] szReferrer

Zeigen Sie auf eine Zeichenfolge, die die URL des Dokuments angibt, aus dem die URL in der Anforderung szObjectName abgerufen wurde. Wenn dieser Parameter auf NULL festgelegt ist, wird kein verweisendes Dokument angegeben.

ppRequest

Bei erfolgreicher Rückgabe der Methode wird dieser Parameter auf eine IMFHttpDownloadRequest-Schnittstelle festgelegt.

Zurückgegebener Wert

Die Methode gibt ein HRESULT-zurück. Mögliche Werte sind die Werte in der folgenden Tabelle, sind jedoch nicht beschränkt.

Rückgabecode Beschreibung
S_OK
Die bereitgestellten Informationen wurden erfolgreich gespeichert.
E_OUTOFMEMORY
Es ist nicht genügend Arbeitsspeicher vorhanden, um den Vorgang abzuschließen.
MF_E_INVALIDREQUEST
Die Methode wurde aufgerufen, nachdem "Close " oder " SetServer" aufgerufen wurde.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 10, Version 1703 [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Nicht unterstützt
Zielplattform Windows
Header mfidl.h
Bibliothek Mfplat.lib
DLL Mfplat.dll

Siehe auch

IMFHttpDownloadSession-