[Info] Codigo de Error de Visual Basic

Iniciado por agus0, 14 Enero 2011, 14:07 PM

0 Miembros y 1 Visitante están viendo este tema.

agus0

Hola Gente... Estaba Aburrido :rolleyes: y Me pregunte cuales son los errores de Vb e hice una aplicacion... Que Genero esta Listita...

Código (Text) [Seleccionar]
3 - Return sin GoSub
5 - Llamada a procedimiento o argumento no válidos
6 - Desbordamiento
7 - Memoria insuficiente
9 - El subíndice está fuera del intervalo
10 - La matriz está fija o temporalmente bloqueada
11 - División por cero
13 - No coinciden los tipos
14 - Espacio para cadenas insuficiente
16 - Expresión demasiado compleja
17 - No se puede realizar la operación solicitada
18 - Interrupción por parte del usuario
20 - Resume sin error
28 - Espacio de pila insuficiente
35 - Procedimiento Sub o Function no definido
47 - Hay demasiados clientes de la aplicación DLL
48 - Error al cargar la biblioteca DLL
49 - La convención de llamadas a DLL es incorrecta
51 - Error interno
52 - Nombre o número de archivo incorrecto
53 - No se ha encontrado el archivo
54 - Modo de archivo incorrecto
55 - El archivo ya está abierto
57 - Error de E/S de dispositivo
58 - El archivo ya existe
59 - Longitud de registro incorrecta
61 - Disco lleno
62 - La entrada de datos ha sobrepasado el final del archivo
63 - Número de registro incorrecto
67 - Hay demasiados archivos
68 - El dispositivo no está disponible
70 - Permiso denegado
71 - Disco no preparado
74 - No se puede cambiar el nombre con una unidad de disco diferente
75 - Error de acceso a ruta o archivo
76 - No se ha encontrado la ruta de acceso
91 - Variable de tipo Object o la variable de bloque With no está establecida
92 - El bucle For no está inicializado
93 - La cadena modelo no es válida
94 - Uso no válido de Null
96 - No se pueden desactivar eventos de objeto porque el objeto ya desencadena el número máximo de eventos que admite
97 - No se puede llamar a una función friend de un objeto que no sea una instancia de una clase
98 - Una llamada a una propiedad o un método no puede incluir una referencia a un objeto privado como un argumento o un valor de retorno
321 - Formato de archivo no válido
322 - No se puede crear un archivo temporal necesario
325 - Formato no válido en el archivo de recursos
380 - El valor de la propiedad no es válido
381 - El índice de la matriz de propiedades no es válido
382 - No se admite Set en tiempo de ejecución
383 - No se admite Set (propiedad de sólo lectura)
385 - Se necesita un índice de matriz de propiedades
387 - Set no está permitido
393 - No se admite Get en tiempo de ejecución
394 - No se admite Get (propiedad de sólo escritura)
422 - No se encontró la propiedad
423 - No se ha encontrado la propiedad o el método
424 - Se requiere un objeto
429 - El componente ActiveX no puede crear el objeto
430 - Esta clase no admite Automatización o no admite la interfaz esperada
432 - No se encontró el nombre del archivo o de la clase durante la operación de Automatización
438 - El objeto no admite esta propiedad o método
440 - Error de Automatización
442 - Se ha perdido la conexión con la biblioteca de tipos o con la biblioteca de objetos para proceso remoto. Haga clic en Aceptar para quitar la referencia.
443 - El objeto de Automatización no tiene un valor predeterminado
445 - El objeto no admite esta acción
446 - El objeto no admite argumentos con nombre
447 - El objeto no admite la configuración regional actual
448 - No se ha encontrado el argumento con nombre
449 - El argumento no es opcional
450 - Número de argumentos erróneo o asignación de propiedad no válida
451 - El procedimiento Let de la propiedad no está definido y el procedimiento Get no ha devuelto un objeto
452 - Número ordinal no válido
453 - No se encuentra la función de biblioteca DLL especificada
454 - No se encuentra el recurso de código
455 - Error en el bloqueo de los recursos de código
457 - Esta clave ya está asociada a un elemento de esta colección
458 - La variable usa un tipo de Automatización no admitido en Visual Basic
459 - El objeto o la clase no admite el conjunto de eventos
460 - El formato del Portapapeles no es válido
461 - No se encontró el método o el miembro de datos
462 - El equipo servidor remoto no existe o no está disponible
463 - La clase no está registrada en el equipo local
481 - La imagen no es válida


De Mas esta decir que el Error "0" (Cero) No Existe es el numero designado a ERROR_SUCCESS. ;) [Gracias xkiz]

Y Los Numeros que no Figuran en la lista devolvieron: "Error definido por la aplicación o el objeto"
Que Son:

Código (text) [Seleccionar]

1,2,4,8,12,15,19
21 a 27
29 a 34
36 a 46
50,56
60
64 a 66
69
72,73
77 a 90
95
99 a 320
323,324
326 a 379
385,386
388 a 392
395 a 421
425 a 428
431
433 a 437
439,441,444,456
464 a 480
482 a 65535

79137913

HOLA!!!

;-) ;-) ;-)

Muy bueno, pero la ide no te da la descripcion al lado del nro cuando sale algun error?

;D ;D ;D

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

agus0

Si Te la da, Pero si vos queres controlar un error ya sabes que Numero De Error Va a tener...

Example:


On Error goto Solucion
    msgbox (25 / 0)
Solucion:
    if err.Number = 11 Then
        Msgbox "Tonto no se puede dividir por Cero!!"
    end if

xkiz ™

#3
Código (vb) [Seleccionar]

Private Declare Function FormatMessage Lib "kernel32" Alias "FormatMessageA" (ByVal dwFlags As Long, lpSource As Any, ByVal dwMessageId As Long, ByVal dwLanguageId As Long, ByVal lpBuffer As String, ByVal nSize As Long, Arguments As Long) As Long
Sub Main()
Dim i As Long

Open App.Path & "\SystemErrorDescr.txt" For Output As #1
For i = 1 To 15999
   Print #1, i & ": " & GetErrorMsg(i)
Next
Close #1
End Sub

Public Function GetErrorMsg(Optional ErNumb As Long = 0) As String
' the bigest number is 15999
' Info: http://msdn.microsoft.com/en-us/library/ms681381%28v=VS.85%29.aspx
Dim tmp As String
Dim aaa As String

tmp = Space(200)
FormatMessage &H1000, ByVal 0&, ErNumb, &H0, tmp, Len(tmp), ByVal 0&

aaa = Trim(tmp)

If (aaa = vbNullString) Then aaa = "UnKown Description."
aaa = Replace(aaa, Chr(13), vbNullString)
GetErrorMsg = aaa
End Function


se que las descripciones faltantes hay que extraerlas desde archivos especificos del sistema.

CitarDe Mas esta decir que el Error "0" (Cero) No Existe.
0 es el numero designado a ERROR_SUCCESS

ERROR_SUCCESS 0 (0x0)The operation completed successfully.

Dreamaker

Buenisimo, estos son todos los errores que pueden aparecer en VB o los más frecuentes?

Porque tenía entendido que el VB da una descripción del error cuando ocurre, pero en Inglés, es cierto eso?

En ese caso, viene genial esto para informarle al usuario el error pero en Español :D

xkiz ™

en lo que postie yo no lo da en español, lo da en el idioma del sistema, si el sistema esta en español la descripcion será en Español.

y solo estan los errores del sistema, los faltantes estan reservados para funciones especificas que estan en archivos separados del sistema, y hay que extraer la descripcion del error de otra forma, similar a esta....

Dreamaker

Cita de: xkiz en 15 Enero 2011, 16:51 PM
en lo que postie yo no lo da en español, lo da en el idioma del sistema, si el sistema esta en español la descripcion será en Español.

y solo estan los errores del sistema, los faltantes estan reservados para funciones especificas que estan en archivos separados del sistema, y hay que extraer la descripcion del error de otra forma, similar a esta....


Claro, a lo que yo me refería es que aún así en un sistema que no esté en español, uno como programador puede manejar y validar que según X Nº de error, mostrarle al usuario la descripción del error en Español según lo que muestra esta guía, por eso ;-)

agus0

Cita de: Dreamaker en  3 Febrero 2011, 05:23 AM
Claro, a lo que yo me refería es que aún así en un sistema que no esté en español, uno como programador puede manejar y validar que según X Nº de error, mostrarle al usuario la descripción del error en Español según lo que muestra esta guía, por eso ;-)

Claro Podes o Mostrar un MsgBox en el Idioma que vos quieras o Bien Ejecutar una acción Que intente reparar ese error o bien haga no se... Cualquier otra cosa...