QuickBasic - Unidades de CD-ROM en Quick Basic

 
Vista:

Unidades de CD-ROM en Quick Basic

Publicado por B. Azul (1 intervención) el 09/11/2008 22:43:33
Hola a todos, desde hace varios días estoy intentando determinar las unidades de CD-ROM desde Quick Basic pero sólamente puedo determinar la primera unidad, al decir determinar la unidad me refiero a la letra que la representa.

Agradesco anticipadamente su ayuda.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Unidades de CD-ROM en Quick Basic

Publicado por Antoni Masana (13 intervenciones) el 20/11/2008 08:49:34
Lo unico que se me ocurre que puedes hacer es determinar desde que unidades puedes leer o escribir usando en ON ERROR pero no puedes determinar a que dispositivo esta asignado.

Si me equivoco que me rectifique quien este mejor informado pero creo que el Quick Basic existio antes que los CD-ROM por lo que nadie se le ocurrio para hacer una funcion para determinar el tipo de unidad.

En Visual Basic si se puede saber si una unidad esta asignda a un Disco local, un CD-ROM o un recurso compartido.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Unidades de CD-ROM en Quick Basic

Publicado por Antoni Gual (4 intervenciones) el 07/02/2009 14:05:43
ABC packets al rescate!. Esto podría serte útil.
http://www.qbasicnews.com/abc/showsnippet.php?filename=DISK.ABC&snippet=10
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Codigo

Publicado por Antoni Gual (4 intervenciones) el 07/02/2009 17:18:29
Por favor, olvida mi anterior respuesta.
He estado buscando en la lista de interrupciones de Ralf Brown y he sacado el siguiente código. Utiliza llamadas a interrupción por lo que no funcionará en Qbasic. Lo he probado en Windows XP SP3

[codigo]
'$INCLUDE: 'qb.bi'
CLS
DIM r AS regtypex
DIM a$: a$ = SPACE$(32)
drive$ = "d"
r.ax = &H150D
r.es = VARSEG(a$)
r.bx = SADD(a$)
CALL INTERRUPTX(&H2F, r, r)
i = 0
PRINT "unidades de CD disponibles"
DO
i = i + 1
b = ASC(MID$(a$, i, 1))
IF b <> 32 THEN PRINT CHR$(ASC("A") + b)
LOOP UNTIL b = 32
PRINT "numero total de CD's "; i - 1
SLEEP
[/codigo]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Unidades de CD-ROM en Quick Basic

Publicado por marcelo montagna (33 intervenciones) el 13/05/2009 03:05:57
por lo general cuando quiero obtener informacion de la unidad de disco ago lo siguiente
shell "dir c: > archivo.tmp"
y luego es cuestion de abrir archivo.tmp con un open

otra opcion seria que tu programa tenga una especia de SETUP donde le indiques

A: Disketera
C: Disco Rigido
D: Cd Dvd
E: Cd Dvd Virtual
F: SD (Memoria Extraible)

Suerte Marcelo Montagna
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar