![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Al parecer GetLastError siempre regresará cero. No obstante ShFileOperation devuelve un valor distinto de cero en caso de error. De ahí puedes partir.
// Saludos |
|
#2
|
||||
|
||||
|
Hola,
De ahí parto Román... o es la intención: como "ShFileOperation" retorna "no cero"... busco el error con "GetLastError", pero, no parece estar ahí. |
|
#3
|
|||
|
|||
|
Cita:
Cita:
Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
|
#4
|
||||
|
||||
|
Hola,
Gracias egostar. Me quedo con todo, pero, particularmente con esto: Cita:
![]() Gracias otra vez a todos. |
|
#5
|
||||
|
||||
|
Hola,
O sea:
Má o meno.... ![]() |
|
#6
|
||||
|
||||
|
No entiendo porque usar Win32Check. Esa función solo crea una excepción cuando el valor que le pasas no es TRUE, siempre el mismo tipo de excepción. Si es eso lo que quieres, perfecto, pero no creo que te haga falta.
|
|
#7
|
||||
|
||||
|
Hola,
Bueno. El que se levante una excepción puede ayudar. Ahora, la idea es que dicha excepción (en mi caso) aporte "algo". Es decir, no es lo mismo (en mi caso al menos, y según lo veo ahora...) que una función retorne "false" y nada más... a que retorne "false" y exista una variable global, digamos, "ultimoError", donde pueda consultarse el motivo del fallo de la función. Esa es la idea. Ahora bien, se supone que no siempre tiene que retornar el mismo mensaje. Y ahí puede que esté la madre del cordero. Efectivamente, la excepción puede que sea siempre, como dices, del tipo "EOSError", empero, el mensaje de error que la acompañe, ¿será siempre el mismo? En el caso de que el archivo o carpeta a borrar no exista, el mensaje de la excepción es "System Error. Code: 6. Controlador no válido". Supongo que en otro errores se darán otro tipo de mensajes, pero, ahora mismo no se me ocurre cómo puedo probar el asunto. ![]() Última edición por dec fecha: 05-06-2007 a las 01:33:11. |
|
#8
|
||||
|
||||
|
Pues a mi lo que me preocupa es que hace esta instruccion:
Fíjate que la instrucción GetLastError no solo muestra el ultimo error, sino el ultimo resultado de una operación de la api. Así que si dentro de esa rutina se llama, aunque solo sea indirectamente, a una API, GetLastError nos estaría devolviendo ese resultado y no el error que nos interesa. |
|
#9
|
||||
|
||||
|
Hola,
Sí; comprendo lo que dices Seoane. Había pensado en ello... y bueno, tal vez sea por eso que "SysErrorMessage(GetLastError())" retorna "La operación se completó correctamente". Voy a probar el asunto de modo que nada más se ejecute luego de "ShFileOperation" y cuento el resultado. ![]() |
|
#10
|
||||
|
||||
|
Hola,
Nope... algo como esto:
Sigue retornando en "SysErrorMessage(GetLastError())" "La operación se ha completado correctamente", incluso cuando no es así, es decir, "ShFileOperation" retornó algo distinto de cero, puesto que "la carpeta a borrar" no existe... PD. Estoy ahora investigando sobre la función "Win32Check", porque lo que dice la ayuda parece muy interesante... Última edición por dec fecha: 05-06-2007 a las 00:55:58. |
|
#11
|
||||
|
||||
|
Fijate lo que cuenta microsoft
Cita:
PD: Si es que no leemos la ayuda El enlace: http://msdn2.microsoft.com/en-us/library/ms647743.aspx |
|
#12
|
||||
|
||||
|
Hola,
Je, je, je... Sí. No sé si he dicho antes que la función "ShFileOperation" es mucha función... que necesito leer la ayuda, vamos. ![]() Sin embargo... parece que en este caso "Win32Check" puede ayudarnos. Resulta que esta función "comprueba" que la instrucción que encierra se ejecuta correctamente, y, cuando no es así, se levanta una excepción. En el caso que nos ocupa es una excepción del tipo "EOSError", con el mensaje "manejador inválido" (no existe la carpeta, será). Bueno. Estupendo... creo que hoy he aprendido gracias a todos algo que no sabía.
Gracias a todos pataliebres. ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Duda sobre entorno Delphi para Windows Vista | geru_deusto | Varios | 9 | 12-01-2007 13:07:12 |
| Tratamiento de Errores | jsc | Varios | 2 | 15-09-2005 16:20:01 |
| Siguen Errores de CORBA con Windows ME | zuriel_zrf | Providers | 0 | 11-08-2004 08:35:34 |
| conectar Firebird bajo entorno windows | djavier22 | Firebird e Interbase | 2 | 05-07-2004 20:10:07 |
| Tratamiento de la Voz | muli | Varios | 0 | 03-11-2003 19:46:53 |
|