CHttpFile::SendRequestEx

Rufen Sie die Memberfunktion auf, um eine Anforderung zu einem HTTP-Server zu senden.

BOOL SendRequestEx(
   DWORD dwTotalLen,
   DWORD dwFlags = HSR_INITIATE,
   DWORD_PTR dwContext = 1 
);
BOOL SendRequestEx(
   LPINTERNET_BUFFERS lpBuffIn,
   LPINTERNET_BUFFERS lpBuffOut,
   DWORD dwFlags = HSR_INITIATE,
   DWORD_PTR dwContext = 1 
);

Parameter

  • dwTotalLen
    Zahl in der Anforderung gesendet werden, Bytes.

  • dwFlags
    Flags, die den Vorgang beschreiben.Eine Liste der entsprechenden Flags, finden Sie unter HttpSendRequestEx in Windows SDK*.*

  • dwContext
    Der Kontextbezeichner CHttpFile für den Vorgang.Siehe Hinweise weitere Informationen zu diesen Parameter.

  • lpBuffIn
    Zeiger auf initialisierten INTERNET_BUFFERS, der den Eingabepuffer beschrieben, die für den Vorgang.

  • lpBuffOut
    Zeiger auf initialisierten INTERNET_BUFFERS, der den Ausgabepuffer beschrieben, die für den Vorgang.

Rückgabewert

ungleich 0 (null), wenn erfolgreich.Wenn der Aufruf fehlschlägt, ermitteln Sie die Ursache des Fehlers, indem Sie das ausgelöste CInternetException-Objekt überprüfen.

Hinweise

Diese Funktion kann eine Anwendung, Daten mithilfe der Schreiben Sie und WriteString-Methoden von CInternetFile zu senden.Sie müssen die Länge der Daten kennen, um zu senden, bevor Sie eine Überschreibung dieser Funktion aufrufen.Die erste Überschreibung ermöglicht es Ihnen, die Länge Daten anzugeben, die Sie senden möchten.Die zweite Überschreibung akzeptiert Zeiger auf INTERNET_BUFFERS-Strukturen, die verwendet werden können, um den Puffer in allen Details zu beschreiben.

Nachdem der Inhalt in die Datei geschrieben ist, rufen EndRequest, um den Vorgang zu beenden.

Der Standardwert für dwContext wird von MFC zum CHttpFile-Objekt vom CInternetSession-Objekt gesendet, das das CHttpFile-Objekt erstellt wurde.Wenn Sie CInternetSession::OpenURL oder CHttpConnection aufrufen, um ein CHttpFile-Objekt zu erstellen, können Sie die Standardeinstellung überschreiben, um den Kontextbezeichner zu einem Wert der Auswahl festzulegen.Der Kontextbezeichner wird zu CInternetSession::OnStatusCallback zurückgegeben, um den Status von dem Objekt bereitzustellen, mit dem die identifiziert wird.Weitere Informationen finden Sie im Artikel Internet-erste Schritte: WinInet-Klassen weitere Informationen über den Kontextbezeichner.

Ausnahmen

Diese Methode kann Ausnahmen des Typs CInternetException* auslösen.

Beispiel

Dieses Codefragment sendet den Inhalt einer Zeichenfolge zu einer DLL benannten MFCISAPI.DLL auf dem LOCALHOST-Server.Während dieses Beispiel nur einen Aufruf WriteString verwendet, mit mehreren, Daten in Blöcken zu senden ist zulässig.

CString strData = _T("Some very long data to be POSTed here!");
pServer = session.GetHttpConnection(_T("localhost"));
pFile = pServer->OpenRequest(CHttpConnection::HTTP_VERB_POST, 
   _T("/MFCISAPI/MFCISAPI.dll?"));
pFile->SendRequestEx(strData.GetLength());

pFile->WriteString(strData);   
pFile->EndRequest();

Anforderungen

Header: afxinet.h

Siehe auch

Referenz

CHttpFile-Klasse

Hierarchien-Diagramm

CInternetFile-Klasse

CHttpFile::SendRequest