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,得不到数据???????????
  

解决方案 »

  1.   

    你可以参考一下Delphi中的ISAPI programmer's reference
      

  2.   

    pHeaders.GetHeader(pfc,PChar('Content-Length:'), Pchar(strContentLength),@i);
    第三个变量是pointer类型,也就是lpvoid
    你直接将其定义为Integer指针试一试
    pHeaders.GetHeader(pfc,PChar('Content-Length:'), Pchar(strContentLength),@i);
    clen: Integer;
    TGetHeader(pHeaders.GetHeader)(pfc,PChar('Content-Length:'), @clen,i);