como puedo comprobar si un fichero online existe
uso este procedimiento para descargar el fichero de una web:
para usarlo hago esto y todo ok
Como es normal, si el servidor esta offline me salta un mensaje "Error downloading URL: http://www.web.com/fichero.txt", en vez de eso preferiria que no me saliese ningún mensaje emergente o si sale al menos poder cambiar el mensaje que sale por otro. ¿como hago eso? |
he probado con esto:
pero cuando el servidor está offline me salen dos mensajes emergentes: 1º el que he puesto yo: "El servidor esta offline" cuando cierro el 1º me sale este: 2º el "The specified file was not found" como quito el 2º? se que la excepción es ERROR_FILE_NOT_FOUND pero no estoy familiarizado con el uso de excepciones, poco a poco lo voy pillando viendo ejemplos |
he probado esto que creia que era lo correcto pero no funciona, no me detecta la excepcion me salta el mensaje que me salia a la primera de "Error downloading URL: http://www.web.com/fichero.txt" en vez del que pongo
|
Hay dos puntos a notar.
Primero, except y finally son independientes uno de otro por lo que no puedes omitir uno de los dos si son necesarios ambos. Lo que tienes que hacer es anidar los bloques:
Tal como lo tenías, el componente se destruirá sólo cuando haya una excepción. Por otra parte, cuando ejecutas una aplicación desde el IDE y tienes activada la opción Stop on Delphi Exceptions: la ejecución se detiene dos veces, en la excepción original y en la que pones tú. Puedes desactivar dicha opción pero, en todo caso, cuando ejecutes desde fuera del IDE, sólo se detendrá en tu excepción. // Saludos |
Muchas gracias por responder pero haciendo lo que me dices
me siguen saliendo los dos mensajes no solo el mio. 1º "No se puede descargar el archivo" y cuando lo cierro 2º "The specified file was not found" uso delphi 2010 la opcion equivalente a "Stop on delphi exceptions" que encuentro en Delphi2010 es esta "Notify on Language exceptions" pero la desmarco y cambio el codigo por el que me has puesto pero nada, me salen los dos mensajes |
Solucionado, funcionaba bien la forma que me habias puesto .
el problema era mio, ya que el 2º mensaje me venia de otro lado no de este procedimiento. muchas gracias |
La franja horaria es GMT +2. Ahora son las 12:37:22. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi