0

我正在将 32 位 ISAPI dll 迁移到 64 位。我正在使用 Visual Studio 2008。HttpExtensionProc 函数中的 EXTENSION_CONTROL_BLOCK 指针出现问题。EXTENSION_CONTROL_BLOCK 结构中的字符指针在进入函数时无效;它们在监视窗口中标有 。如果我通过交换指针的前 4 个字节和后 4 个字节来手动修改 char 指针,则会显示正确的值。任何想法为什么会发生这种情况?

这是修改指针前的监视窗口,注意lpszQueryString: link text 替代文字

这是修改指针后的监视窗口,注意lpszQueryString: link text 替代文字

4

1 回答 1

1

问题是我正在使用 1 字节对齐进行构建。我需要这样做:

#pragma pack(push, 8)
#include <httpext.h>
#pragma pack(pop)

感谢 nobugz 的回答。

于 2009-05-11T16:23:10.090 回答