ON_PARSE_COMMAND

ON_PARSE_COMMAND ( FnName, mapClass, Args )

Parametry

FnName

Nazwa funkcji składowej. Również nazwa polecenia.

mapClass

Nazwa klasy mapować funkcji.

Argumenty

Argumenty, które mapują parametru FnName. Aby uzyskać listę symboli, zobacz uwagi.

Uwagi

Makro ON_PARSE_COMMAND jest używany na mapie analizy określenie polecenia do obiektu CHttpServer z klienta.

Funkcja Członkowskich wskazanych przez FnName musi mieć wskaźnik do CHttpServerContext jako pierwszy parametr. FnName jest typu LPSTRi są identyfikowane przez symbol ITS_LPSTR na mapie analizy; oznacza to, że FnName wskazuje ciąg zawierający funkcję Państwa w klasie mapClass.

Parametr Args może mieć jedną z następujących wartości:

Symbolu Typ lub komentarza
ITS_EMPTY Argumenty nie może być puste. Jeśli masz żadnych argumentów za pomocą ITS_EMPTY.
ITS_PSTR Wskaźnik na ciąg.
ITS_RAW Dokładne, surowe dane wysyłane do rozszerzenia ISAPI. Nie należy używać ITS_RAW z innym typem parametru; Aby to zrobić spowoduje ASSERT. Patrz uwagi przykładem.
ITS_I2 krótki
ITS_I4 długą
ITS_R4 pływak
ITS_R8 podwójne

Przykłady

/ / Followingnbsp; Wyodrębnianie Illustrates przykład
/ / ciąg, jak i na krótko wysyłane do serwera:

BEGI&N_PARSE_MAP (CDerivedClass, CHttpServer)
   DEFAULT_PARSE_COMMAND (Myfunc, CDerivedClass)
   ON_PARSE_COMMAND (Myfunc, CDerivedClass, ITS_PSTR
    ITS_I2)
   ON_PARSE_COMMAND_PARAMS ("całkowitą ciąg = 42")
   ON_PARSE_COMMAND (Myfunc2, CDerivedClass, ITS_PSTR
    ITS_I2 ITS_PSTR)
   ON_PARSE_COMMAND_PARAMS ("ciąg Całkowita
    ciąg2 = 'Default wartość' ")
END_PARSE_MAP(CDerivedClass)

Uwaga   Użyj pojedyncze cudzysłowy, jeśli włączenie pomieszczeń do wartości domyślnych dla opcjonalnych s ITS_PSTR.

unieważnij Myfunc (CHttpServerContext * pCtxt, LPTSTR psz&Name, int nNumber);
void Myfunc2 (CHttpServerContext * pCtxt, LPTSTR pszName, int nNumber, LPTSTR pszTitle);

/ / Followingnbsp; przykład Illustrates wyodrębnianie / / nieprzetworzone dane wysyłane do serwera:

BEGIN_PARSE_MAP (CDerivedClass, CHttpServer)
   DEFAULT_PARSE_COMMAND (Myfunc, CDerivedClass)
   ON_PARSE_COMMAND (Myfunc, CDerivedClass, ITS_RAW)
END_PARSE_MAP(CDerivedClass)

z prototyp w następujący sposób:

void CDerivedClass::Myfunc (CHttpServerContext * pCtxt, pVoid void * DWORD dwBytes.)

W drugim przykładzie powyżej pVoid wskaź&nik punktów danych wysyłanych do sieci extension.nbsp; dwBytesParametr ma liczbę bajtów na pVoid .  Jeśli dwBytes jest równa zero, pVoid nie mogą wskazywać na cokolwiek.

Uwaganbsp;  Programy obsługi dla polecenia map analizy musi mieć wskaźnik do CHttpServerContext jako pierwszy parametr, a parametry muszą być zadeklarowane w tej samej kolejności, w której są zdefiniowane w O&N_PARSE_COMMAND.

Zobacz teżnbsp;BEGI&N_PARSE_MAP, END_PARSE_MAP, ON_PARSE_COMMAND_PARAMS, DEFAULT_PARSE_COMMAND, CHttpServer

Index