主题:怎样在qb中使用光驱
杨轶
[专家分:30] 发布于 2005-01-31 17:04:00
[em18][em18][em18]
回复列表 (共7个回复)
沙发
QB71 [专家分:1300] 发布于 2005-01-31 17:25:00
去看一下DOS的中断
板凳
codepk [专家分:2800] 发布于 2005-01-31 22:37:00
1 挂上万能光驱驱动 2 用出错陷阱找出最后一个盘符 3,爱咋用咋用吧......
3 楼
qb45 [专家分:2880] 发布于 2005-02-01 09:05:00
判断光驱是否装入的BASIC源程序
启动时请加参数—如QB/L
'$INCLUDE: 'qb.bi'
DIM SHARED ax, bx, cx, dx
PRINT "光驱的盘幅为"; disk$
FUNCTION disk$
'根据中断返回 判断光区盘符
DIM d$(25)
d$(0) = "A:": d$(1) = "B:": d$(2) = "C:": d$(3) = "D:": d$(4) = "E:": d$(5) = "F:"
d$(6) = "G:": d$(7) = "H:": d$(8) = "I:": d$(9) = "J:": d$(10) = "K:": d$(11) = "L:"
ax = &H1500
int2f
IF bx = 0 THEN PRINT "没有找到光驱 --No CDRom" ELSE disk$ = d$(cx)
END FUNCTION
SUB int2f
'INT2F中断调用
DIM Reg AS regtypex
Reg.ax = ax
Reg.bx = bx
Reg.cx = cx
Reg.dx = dx
Reg.flags = flags
INTERRUPTX &H2F, Reg, Reg
ax = Reg.ax
bx = Reg.bx
cx = Reg.cx
dx = Reg.dx
flags = Reg.flags
END SUB
4 楼
xyaxw [专家分:40] 发布于 2005-02-04 15:13:00
DIM Reg AS regtypex是什么意思
5 楼
staa [专家分:3690] 发布于 2005-02-08 00:07:00
简单地说,如果必须用光盘盘符的话,可以考虑将光盘盘符作为一个启动参数,比如说是“F”,可以这样启动程序:
xxxx f
6 楼
qb45 [专家分:2880] 发布于 2005-02-15 11:49:00
第 4 楼
DIM Reg AS regtypex是什么意思
回答:相关的中断调用的用法请你看看置顶的帖子!
附:
2F中断中光区的相应功能
入口
AH = 15H
返回
BX=0 没有光驱
CX=光区号 0A1B2C.....
7 楼
qb45 [专家分:2880] 发布于 2005-02-15 11:51:00
再次建议你别再这个论坛里问这些问题,如果你真的想知道这些很实际的应用,请到WWW.DOSQB.COM,它是个专门讨论用QBASIC做实际开发的论坛,而这个论坛只是大家来问问题目,请教个语句,找个答案的地方!
希望你以后别再发这种帖子了!不然的话,删除勿论!!!!!!
判断光驱是否装入的源程序(改进板)
'$INCLUDE: 'qb.bi'
DIM SHARED ax, bx, cx, dx
PRINT "光驱的盘幅为"; disk$
FUNCTION disk$
ax = &H1500
int2f
IF bx = 0 THEN PRINT "没有找到光驱 --No CDRom" ELSE disk$ = CHR$(cx + 65)
END FUNCTION
SUB int2f
DIM Reg AS regtypex
Reg.ax = ax
Reg.bx = bx
Reg.cx = cx
Reg.dx = dx
Reg.flags = flags
INTERRUPTX &H2F, Reg, Reg
ax = Reg.ax
bx = Reg.bx
cx = Reg.cx
dx = Reg.dx
flags = Reg.flags
END SUB
我来回复