shjdriver
驱动牛犊
驱动牛犊
  • 注册日期2003-04-01
  • 最后登录2008-04-02
  • 粉丝0
  • 关注0
  • 积分277分
  • 威望30点
  • 贡献值0点
  • 好评度26点
  • 原创分0分
  • 专家分0分
阅读:647回复:0

驱动程序问题

楼主#
更多 发布于:2003-06-11 12:38
我编写了一底层wdm驱动程序,在win2000下正常使用,底层相关代码如下:
switch (I.IoctlCode())
{
case DIOC_OPEN://打开WDM命令,对应CreatFile??????????
            break;
case BA_PORTA://卡初始化命令 设置并口地址
t << \"deviceiocontrol  BA_PORTA \"<<EOL;
ii=(short int *)ioBuffer;//
i1=(short int *)ioBuffer;//返回成功与否信息
          *i1=hd.PORTA;
I.Information() = sizeof(short int);
break;
.............
}
上层通讯语句为
DeviceIoControl(hHello,BA_PORTA,&k,sizeof(k),bufOutput,sizeof(bufOutput),&nOutput,NULL);

在win2000中,DeviceIoControl能返回正确的值
但在win98中,返回值不正确,nOutput=0xcccccccc;
调试时,已运行case BA_PORTA:下面的语句。麻烦帮忙解决。

[编辑 -  6/11/03 by  shjdriver]
游客

返回顶部