我使用createFile方法,但在win9x系统下不支持disk device的,我现在想得到cdrom的句柄以便可以进行DeviceIOCtrl的操作,请问该如何操作。
另外,在纯dos模式(即重启后进的dos模式)中,可以通过向端口输出数据来操作
cdrom(outp()),但在windows下却不行,如果用inp的话,总是得到0xff,请问有什么方法可以使windows下也可以直接使用outp方法来操作光驱吗?

解决方案 »

  1.   

    你的问题是不会,,
    http://www.xfocus.net/articles/200303/496.html你参看这个文章可能分有点不对题...NT下端口直接访问
      

  2.   

    你可以把CDROM的设备接口名来传递给CreateFile的第一个参数,这样就可以打开CDROM和driver通信了。如果你只是发送一些标准SCSI command,如0x2A、0x0、0x1A等等,那么推荐你透过ASPI来访问设备。请参考DDK
      

  3.   

    ?????
    人家问的是Win9X下如何
      

  4.   

    得到硬盘句柄无非是读写硬盘,98 下可以用int13 来读,传绝对扇区号,不过编程比较麻烦,要先转到v86 模式下才能执行,哈哈,不过也不是很难,vtools 都封装得很好了!
      

  5.   

    我原来也是碰到了你这样的问题,到后来还是用 int13 来解决的,98系统抽象的没有 2000好,没办法裁这样做的!
      

  6.   

    啊 你要得到 cdrom 的呀,不好意思,哈哈
      

  7.   

    mciSendString("set cdaudio door open",NULL,0,0);
                    mciSendString("set cdaudio door closed",NULL,0,0);
      

  8.   

    http://www.chinaoak.com/download/material/MultiMedia/EJECT_CD.txt
      

  9.   

    http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=27430