birdtomaster
驱动牛犊
驱动牛犊
  • 注册日期2003-10-03
  • 最后登录2008-09-07
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1154回复:1

请教驱动中建立链表的问题

楼主#
更多 发布于:2004-07-30 00:44
我想再filemon驱动中建立一个规则链表,但是赋值好像总是赋不上,有如下步骤:
1、在头文件中定义节点
typedef struct RefuseRule {
CHAR file_fullPathName[MAXPATHLEN];
CHAR pro_name[PROCNAMELEN];
CHAR  asktype[8];
struct RefuseRule *next;
} RefuseRule,*PREFUSERULE;
2、定义全局变量
PREFUSERULE         PRefuseRule ;  
RefuseRule          *p_temp , first_node;
int                 rule_count==-1;
3、初始化过滤规则链表

if(rule_count==-1)
{
PRefuseRule=(RefuseRule *) ExAllocatePool( NonPagedPool, (sizeof(RefuseRule)));
strcpy(PRefuseRule->pro_name,"");
strcpy(PRefuseRule->file_fullPathName,"abc.txt");
PRefuseRule->next=NULL;
rule_count++;
}
4、对链表进行增加和删除操作,用DbgPrint输出观察应用程序传入的串,正确传入,但是结果表明规则始终没有加上,结果发现头节点的信息就是第3步的都没有,传入的串分开后也有问题,最初使用数组不行,后使用malloc不行,先使用ExAllocatePool( NonPagedPool, 。。。只能说不死机,但是赋值总是没有赋上。
*************************************
这是什么原因呢,请大侠指点一二
或者能给出一个简单的初始化链表和添加节点的示例?
多谢 !!!!!!!!:o

[编辑 -  7/30/04 by  birdtomaster]
zhangc98
驱动牛犊
驱动牛犊
  • 注册日期2002-03-30
  • 最后登录2004-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-07-30 17:58
呵呵,我只看过filemon中的例子,你可以参考一下
目前:新手上路; 目标:高级站友; 理想:开国大佬; 方法:自己的努力+大家的关照!
游客

返回顶部