代码之家  ›  专栏  ›  技术社区  ›  Ohad

将CString传递给ISAPI扩展中的IIS ServerSupportFunction函数

  •  1
  • Ohad  · 技术社区  · 16 年前

    我得到了一个在VC6中编译的ISAPI扩展dll,它通过MFC的CHttpServerContext类调用“ServerSupportFunction”。 代码类似于(假设Ctx是类CHttpServerContext的对象)

    CString str;
    str = "Content-Type: text/plain\r\n";
    str += "Content-Length: 200\r\n";
    str += "\r\n";
    
    DWORD len = str.GetLength();
    
    Ctx->ServerSupportFunction(HSE_REQ_SEND_RESPONSE_HEADER,NULL,
                               &len,
                               (LPWORD)(LPCTSTR)str);
    

    Windows2008IIS7返回一个windows错误码error\u INVALID\u参数

    由于使用CString,函数调用成功。 dll是在windowsxp中用VC6和静态MFC编译的。

    由于我不愿意更改dll代码,有人知道为什么在Windows2008中出现这个问题,以及如何解决这个问题吗?

    是否与机器代码页相关?dll是否应进行不同的编译?(可能没有UNICODE)

    1 回复  |  直到 16 年前
        1
  •  1
  •   Ohad    16 年前

    “HTTP/1.0 200确定\r\n内容类型:text/plain\r\n…”

    推荐文章