function OnPreprocHeads(var pfc: THTTP_FILTER_CONTEXT; pvNotification:pointer) : DWORD ;
var
pHeaders : THTTP_FILTER_PREPROC_HEADERS;
//dwSize:DWORD;
//pContentLength:pointer;
GetSrvVar : TGetServerVariable;
ullContentLength:Cardinal;
pContentLength: array[0..4096] of char;
i: DWORD;
strContentLength: string;
strHost: string;
strRemoteAddr : string;
begin
pHeaders:= THTTP_FILTER_PREPROC_HEADERS(pvNotification^);
pHeaders.GetHeader(pfc,PChar('Content-Length:'), Pchar(strContentLength),@i);strToInt(strContentLength)一直为0,得不到数据???????????
第三个变量是pointer类型,也就是lpvoid
你直接将其定义为Integer指针试一试
pHeaders.GetHeader(pfc,PChar('Content-Length:'), Pchar(strContentLength),@i);
clen: Integer;
TGetHeader(pHeaders.GetHeader)(pfc,PChar('Content-Length:'), @clen,i);