FileXtras 4

MI pregunta es la siguiente: Estoy utilizando el Xtras FileXtra para poder abrir películas en avi desde un lector de cd y estoy utilizando el siguiente código:
fxObj = Xtra ("FileXtra4").new()
fxObj.fx_FileOpenDocument(the moviePath & "videos\archivos.avi")
fxObj=0
Este código funciona si tienes el proyector en el cd, pero yo lo instalo en el disco duro.Con lo cual me podrías decir como puedo encontrar la película con el Xtras FileXtras en cualquier unidad de cd, es que con el Buddy ya he gastado las 2 funciones. Gracias por tu tiempo y conocimiento

1 Respuesta

Respuesta
1
NO es una tarea sencilla, pero se puede hacer.
Primero te sugiero crear un archivo en el CDROM que determinar si es o no el CDROM de tu proyecto.
Luego, desde el proyector utilizas "fx_VolumesToList" para generar una lista con todas las unidades de disco que posee el pc.
Recorres la lista antes generada y comparas el valor de la lista con "fx_VolumeIsCDROM"
De lo anterior debes generar también una lista, pues es muy probable que un pc posea más de una unidad de CDROM.
Cuando ya tienes la lista de CDROM, buscas si el archivo que generaste al principio existe en el CDROM que está puesto, para eso utilizas "fx_FileExists"
Una vez que has terminado todo lo anterior, ya tienes el path de la unidad de CDROM y por tanto puedes concatenar esa unidad con "videos\archivos.avi"
Te quedaría algo como
cdrom="D:\"&"videos\archivos.avi"
Disculpa mi ignorancia, gracias a tu consejo entiendo tu idea, pero todavía estoy algo verde en la programación de lingo.Se que tiene que ser algo así
on mouseUp
fxObj = Xtra("FileXtra4").new()
set listacd=[]
listaVar=fxObj.fx_VolumesTolist()
j=0
repeat with i = 1 to listaVar.count
retVal = fxObj.fx_VolumeIsCdrom(listaVar.getAt(i))
if retVal=1 then
j=j+1
listacd[j]=listaVar.getAt(i)
end if
end repeat
if listacd<>empty then
repeat with j = 1 to listacd.count
*** cdrom = fxObj.fx_FileExists(listacd.getAt(j) &":\Documentales\ARCHIVOS NASA - Skylab, La segunda mision tripulada.avi")
if cdrom=1 then
--abrir el archivo
end if
end repeat
end if
fxObj=0
end
Bien la linea donde aparece **, no me encuentra el archivo siempre me da 0, supongo que tendré algo mal en la sintaxis, ya que las unidades de cd me las encuentra bien. ¿Me podrías decir donde tengo el fallo?
¿Y por ultimo cuando tengo la dirección como le digo que me abra el archivo?
Al final donde me trabo es en lo más fácil, gracias por tu ayuda.
NO hice un debug completo del script que me indicas, pero a simple vista veo que sobra algo
en la linea que marcaste ***
borra: :\
en el strig
":\Documentales\ARCHIVOS NASA - Skylab, La segunda mision tripulada.avi"
La lista listacd.getAt(j)
debe retornar "d:\"
Para abrir el archivo probaste con lo siguiete??
fxObj.fx_FileOpenDocument(listacd.getAt(j) &":\Documentales\ARCHIVOS NASA - Skylab, La segunda mision tripulada.avi")
Si no te funciona haz la prueba poniendo un nombre más corto al archivo AVI.
C

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas