阅读:647回复:0
驱动程序问题
我编写了一底层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] |
|