首页
社区
课程
招聘
[求助]关于驱动编译出错
发表于: 2009-10-7 21:45 6241

[求助]关于驱动编译出错

2009-10-7 21:45
6241
本人使用的是VS2008编译这个过腾讯驱动代码,结果出现如下错误,请高手赐教

错误如下:
1>------ 已启动全部重新生成: 项目: xxx, 配置: Debug Win32 ------
1>正在删除项目“xxx”(配置“Debug|Win32”)的中间文件和输出文件
1>正在编译...
1>LDasm.c
1>RestoreShadow.c
1>f:\winddk\2600\inc\ddk\wxp\ntddk.h(10603) : error C2061: 语法错误 : 标识符“PCONTEXT”
1>f:\winddk\2600\inc\ddk\wxp\ntddk.h(10604) : error C2059: 语法错误 : “}”
1>f:\winddk\2600\inc\ddk\wxp\ntddk.h(11546) : fatal error C1189: #error :  "no target architecture"
1>正在生成代码...
1>生成日志保存在“file://c:\Documents and Settings\Administrator\My Documents\Visual Studio 2008\Projects\xxx\xxx\Debug\BuildLog.htm”
1>xxx - 3 个错误,0 个警告
========== 全部重新生成: 成功 0 个,失败 1 个,跳过 0 个 ==========

上传附件,希望知道出错原因的人帮下忙

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 796
活跃值: (370)
能力值: ( LV9,RANK:380 )
在线值:
发帖
回帖
粉丝
2
typedef struct _CONTEXT {

    //
    // The flags values within this flag control the contents of
    // a CONTEXT record.
    //
    // If the context record is used as an input parameter, then
    // for each portion of the context record controlled by a flag
    // whose value is set, it is assumed that that portion of the
    // context record contains valid context. If the context record
    // is being used to modify a threads context, then only that
    // portion of the threads context will be modified.
    //
    // If the context record is used as an IN OUT parameter to capture
    // the context of a thread, then only those portions of the thread's
    // context corresponding to set flags will be returned.
    //
    // The context record is never used as an OUT only parameter.
    //

    ULONG ContextFlags;

    //
    // This section is specified/returned if CONTEXT_DEBUG_REGISTERS is
    // set in ContextFlags.  Note that CONTEXT_DEBUG_REGISTERS is NOT
    // included in CONTEXT_FULL.
    //

    ULONG   Dr0;
    ULONG   Dr1;
    ULONG   Dr2;
    ULONG   Dr3;
    ULONG   Dr6;
    ULONG   Dr7;

    //
    // This section is specified/returned if the
    // ContextFlags word contians the flag CONTEXT_FLOATING_POINT.
    //

    FLOATING_SAVE_AREA FloatSave;

    //
    // This section is specified/returned if the
    // ContextFlags word contians the flag CONTEXT_SEGMENTS.
    //

    ULONG   SegGs;
    ULONG   SegFs;
    ULONG   SegEs;
    ULONG   SegDs;

    //
    // This section is specified/returned if the
    // ContextFlags word contians the flag CONTEXT_INTEGER.
    //

    ULONG   Edi;
    ULONG   Esi;
    ULONG   Ebx;
    ULONG   Edx;
    ULONG   Ecx;
    ULONG   Eax;

    //
    // This section is specified/returned if the
    // ContextFlags word contians the flag CONTEXT_CONTROL.
    //

    ULONG   Ebp;
    ULONG   Eip;
    ULONG   SegCs;              // MUST BE SANITIZED
    ULONG   EFlags;             // MUST BE SANITIZED
    ULONG   Esp;
    ULONG   SegSs;

    //
    // This section is specified/returned if the ContextFlags word
    // contains the flag CONTEXT_EXTENDED_REGISTERS.
    // The format and contexts are processor specific
    //

    UCHAR   ExtendedRegisters[MAXIMUM_SUPPORTED_EXTENSION];

} CONTEXT;

typedef CONTEXT *PCONTEXT;
2009-10-7 21:59
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
很强大,我看不懂
2009-10-7 22:04
0
雪    币: 208
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
出错位置是 f:\winddk\2600\inc\ddk\wxp\ntddk.h
你修改这个文件了??
没有的话 可能是vc2008 的问题
vc2008和vc6.0相比 修改了 一部分语法。
你既然有ddk 直接用build 多好啊
2009-10-9 20:17
0
雪    币: 208
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
错误有2处
pe.h  
中注释掉 下面的一行,因为重复定义了BOOL
typedef unsigned char  BOOL, *PBOOL;

第二处 是 RestoreShadow.c
第30行 去掉 关于ZwCreateSection函数的注释

build成功
2009-10-9 20:35
0
游客
登录 | 注册 方可回帖
返回
//