Visual Basic - Detectar archivo abierto

Life is soft - evento anual de software empresarial
 
Vista:

Detectar archivo abierto

Publicado por Paco (31 intervenciones) el 28/01/2008 13:52:48
Tengo las instrucciones:
Puerto=FreeFile
Open "NombreImpresora" For Output As #Puerto
para imprimir un documento en impresora matricial con instrucciones posteriores
del tipo "Print #Puerto....".

Ultimamente el "Open" me da error 55 archivo abierto. Puede ser q lo este cerrando mal o q el programa se vaya por algun lado sin cerrarlo. Lo q pregunto es si se puede comprobar si el nº de archivo q esta en la variable Puerto esta ya abierto antes de ejecutar el "Open..." o hay q poner un "Resume next" y esperar a q se produzca el error para preguntar por él. 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:Detectar archivo abierto

Publicado por jose carlos (340 intervenciones) el 28/01/2008 14:42:55
utiliza la oreden FREEFILE para que te de un número que no esté siendo utilizado.

open "C:archvo.txt" for input as #freefile
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:Detectar archivo abierto

Publicado por Paco (31 intervenciones) el 28/01/2008 14:51:27
Gracias por responder. ¿Por qué no puedo usar una variable que almacene el "Freefile" y hacer referencia posteriormente a la misma?. ¿Es q da problemas por alguna razón?.
Si usara directamente "Freefile" en la instrucción "Open" como dices, ¿Como puedeo hacer referencia a ese nº de archivo en las instrucciones "print .." Sldos
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:Detectar archivo abierto

Publicado por Ivan (1039 intervenciones) el 28/01/2008 16:30:48
Claro que puedes dejar en una variable lo que te retorne la FUNCION FreeFile (que no es "oreden", ni "orden"):
inTuVariable = FreeFile
Obviamente el ejemplo que te dieron está mal.
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:Detectar archivo abierto

Publicado por Paco (31 intervenciones) el 28/01/2008 16:47:49
Hola de nuevo. Empecé un post planteando una pregunta, y me encuentro que acabamos aclarando si Freefile es una "orden" o una "función" . Esta no es la cuestión que quería plantear.
¿Puede ocurrir que en sistemas multipuestos esta función Freefile asigne un mismo nº (quizás por error de programa) a dos o mas usuarios a la vez?.
¿Hay alguna instrucción para saber si el archivo cuyo nº me da la función Freefile YA está abierto ,antes de intentar hacerlo?. Gracias.
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

Tema cerrado

Publicado por Ivan (1039 intervenciones) el 28/01/2008 18:08:32
Si lees en la ayuda qué es lo que hace la FUNCION FreeFile te enterarás de la respuesta a tu pregunta "¿Hay alguna instrucción para saber si el archivo cuyo nº me da la función Freefile YA está abierto ,antes de intentar hacerlo?. "
(Nota: las "instrucciones" NO SON PARA SABER ALGO, para eso están las funciones y propiedades).
Fin de la discusión.
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:Freefile

Publicado por Paco (31 intervenciones) el 29/01/2008 04:25:00
Oye Iván, me alegra que seas tan preciso. Por otro lado no tengo interés en fomentar ninguna discusión, si es que la habido.
Se supone que la función Freefile me está dando el siguiente nº de archivo libre (que yo almaceno en una variable entera) , y en la siguiente instruccion tengo un "Open" a ese nº de archivo: El tema es que, algunas veces, me devuelve un error 55 indicando que ese archivo ya está abierto. ¿Por qué puede ocurrir?.
Sldos.
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