聘我网

新概念招聘3.0

xp下编译LSP报错

vote up0vote downstar
D:\Microsoft SDKs\Windows\v7.1\Samples\netds\winsock\lsp\common>nmake

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl provider.cpp -Zi -Od -DDEBUG -c -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -GS -D_X86_=1  -DWIN32 -D_WIN32 -W3 -D_WINNT -D_WIN32_WINNT=0x0500 -DNTDDI_VERSION=0x05000000 -D_WIN32_IE=0x0500 -D
WINVER=0x0500 -D_PSDK_BLD -DSTRICT -DFD_SETSIZE=1024 /GS /FoWIN2000_DEBUG\provider.obj
provider.cpp
d:\microsoft sdks\windows\v7.1\samples\netds\winsock\lsp\common\lspcommon.h(63) : error C2146: syntax error : missing ';' before identifier 'lpfnTransmitPackets'
d:\microsoft sdks\windows\v7.1\samples\netds\winsock\lsp\common\lspcommon.h(63) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

网上不少人同样问题,却都没有解答

 

2 个答复

vote up0vote downcheck

可以hack一下makefile

$(OUTDIR)\provider.obj:
    $(cc) provider.cpp $(cdebug) $(cflags) -DSTRICT -DFD_SETSIZE=1024 /GS /Fo$(OUTDIR)\provider.obj

改为

$(OUTDIR)\provider.obj:
    $(cc) provider.cpp $(cdebug) $(cflags) -D_WIN32_WINNT=0x0501 -DNTDDI_VERSION=0x05010000 -DSTRICT -DFD_SETSIZE=1024 /GS /Fo$(OUTDIR)\provider.obj

另外,

如果CFLAGS加上/Od /Zi,

LDFLAGS加上/DEBUG

就可以用windbg进行调试。

最后可以tasklist /m lsp_name.dll查看加载某个lsp的进程。

链接
vote up0vote down

In the complicated world we live in, it's good to find siplme solutions.

链接

您的回答





不是您要找的问题? 浏览其他含有标签 的问题或者 自己问个.