elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Error cuando se crea ejecutable
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error cuando se crea ejecutable  (Leído 2,480 veces)
luis456


Desconectado Desconectado

Mensajes: 551



Ver Perfil
Error cuando se crea ejecutable
« en: 12 Junio 2015, 09:26 am »

Hola a todos tengo este error cuando genero un programa en exe y al ejecutarlo me sale la ventanita que me dice  " InvalidCastException " seguir o cancelar,  si sigo el programa se ejecuta normalmente, he compilado muchos exes y es la primera ves que me pasa ,

************** Texto de la excepción **************
System.InvalidCastException: La conversión de la cadena "" en el tipo 'Double' no es válida. ---> System.FormatException: La cadena de entrada no tiene el formato correcto.

************** Depuración JIT **************
Para habilitar la depuración Just In Time (JIT), el archivo de configuración de esta
aplicación o equipo (machine.config) debe tener el
valor jitDebugging establecido en la sección system.windows.forms.
La aplicación también se debe compilar con la depuración
habilitada

Por ejemplo:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Cuando esté habilitada la depuración JIT, cualquier excepción no controlada
se enviará al depurador JIT registrado en el equipo
en lugar de controlarlo mediante el cuadro de diálogo.

Luis





« Última modificación: 12 Junio 2015, 16:01 pm por luis456 » En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.866



Ver Perfil
Re: Error cuando se crea ejecutable
« Respuesta #1 en: 12 Junio 2015, 10:35 am »

Lo que debes hacer para corregirlo es simplemente evitar castear un string VACÍO a esa variable Double, eso es lo que estás haciendo en alguna parte del código, así que comprueba los métodos que se llaman al iniciar tu app;
esto lo puedes controlar haciendo un chequeo al string con la función 'String.IsNullOrEmpty' o también 'String.IsNullOrWhiteSpace', o la función Enumerable.All o Enumerable.Any para evaluar una condición en los caracteres, o haciendo uso de la función 'Double.TryParse'.

Una combinación de todo:
Código
  1. Dim num As Double
  2. Dim str As String = ""
  3.  
  4. If String.IsNullOrEmpty(str) Then
  5.    MessageBox.Show("La variable 'str' está vacía.")
  6.  
  7. ElseIf Not str.All(Function(c As Char) Char.IsNumber(c)) Then
  8.    MessageBox.Show("La variable 'str' contiene caracteres no numéricos.")
  9.  
  10. ElseIf Not Double.TryParse(str, num) Then
  11.    MessageBox.Show("La variable 'str' tiene un formato incorrecto.")
  12.  
  13. End If
  14.  
  15. MessageBox.Show("Nuevo valor: " & num)

Notas:
· La función 'Double.TryParse' intentará convertir la cadena de 'String' a tipo 'Double', devolviendo 'False' si la conversión ha fallado, o 'True' si la conversión ha tenido éxito.

· Si la conversión falla, el valor que se le asigna a la variable referenciada de tipo 'Double' será '0',
  si la conversión tiene éxito, obviamente el valor de la variable referenciada pasa a ser el valor que se ha convertido.

Saludos!


« Última modificación: 12 Junio 2015, 10:56 am por Eleкtro » En línea



luis456


Desconectado Desconectado

Mensajes: 551



Ver Perfil
Re: Error cuando se crea ejecutable
« Respuesta #2 en: 12 Junio 2015, 15:41 pm »

Gracias elektro

Ya esta solucionado el error, lo tenia en el contador que habia puesto en configuracion y que en ves de integer habia puesto double  :silbar:


de nuevo gracias
Luis
 
« Última modificación: 12 Junio 2015, 16:00 pm por luis456 » En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines