我有一个为 IIS6 编写的 ISAPI 过滤器。我现在需要为 IIS7 编写一个包装器来包装 IIS6 过滤器。我计划用 C# 编写 HTTP 模块并 Pinvoke 非托管 dll 方法。
我需要以下代码的 C# 表示,
DWORD WINAPI HttpFilterProc(
PHTTP_FILTER_CONTEXT pfc,
DWORD notificationType,
LPVOID pvNotification
);
typedef struct _HTTP_FILTER_CONTEXT HTTP_FILTER_CONTEXT {
DWORD cbSize;
DWORD Revision;
PVOID ServerContext;
DWORD ulReserved;
BOOL fIsSecurePort;
PVOID pFilterContext;
BOOL GetServerVariable;
BOOL AddResponseHeaders;
BOOL WriteClient;
VOID * AllocMem;
BOOL ServerSupportFunction;
} HTTP_FILTER_CONTEXT, * PHTTP_FILTER_CONTEXT;
我尝试使用 codeplex 中的 PInvoke Assistant,但我无法使其工作。有没有人做过这样的事情?任何人都可以提供上述解决方案吗?
更正:添加了正确的结构