Programación General > Visual Basic 6.0 e inferiores
Error 6: Run Time:Over flow. Alguien se ha tenido con error?
Jimbenit:
Hola a todos...
he creado una aplicacion, en mi PC funciona bien...
pero al correrla en otro pc me ocsiona un errror...
Voy a explicar como es el error.
Mi aplicacion abre bien, se introducen los datos bien... pero al momento de calcular me sale una imagen como la que adjunto.
Estoy seguro de registrar mis ocx de manera correcta...
Los registro por medio del Inno setup:
--- Código: Pascal ---Source: "D:N I L S O NTODOS LOS ACTIVEXWinXPC Engine.ocx"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCACMCT3ES.DLL"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCACOMCAT.DLL"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCACOMCT332.OCX"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCACOMDLG32.OCX"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCAMSCOMCTL.OCX"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCAmsvbvm60.dll"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCAoleaut32.dll"; DestDir: "{app}"; Flags: ignoreversionSource: "D:N I L S O NTODOS LOS ACTIVEXocx usador por MCAolepro32.dll"; DestDir: "{app}"; Flags: ignoreversion
El problema cual podria ser???
Nebire:
Yo creo que sabes lo que es un error de desbordamiento, no ?. Supongo que no hará falta explicártelo.
Tendrás que tomar tu aplicación (el proyecto) ejecutarlo e introducir los mismos valores que te orgininan dicho error para localizar (paso a paso) donde se produce el desbordamiento. Una verz que veas dónde seguramente será bastante obvio el por qué.
Si no fuera obvio es porqué tienes referencias (de tipos de datos) desde otras partes y no te quedan claro cuáles o de qué tipo son.
el error lo puedes reproducir así (vamos que si todavía no sabía lo que es un error de desbordamiento supongo que te quedará claro):
--- Código: Visual Basic --- dim x as byte, K as long x=20k=120x= x * k ' un byte está limitado entre 0 y 255, 20 * 120 produce por tanto desbordamiento...k= k * x ' un long está limitado entre ±2^31 aprox. por tanto no hay desbordamiento
Como el código está compilado pués es un 'runtime error'. Aquí lo de la instalación es lo de menos, no se indica un error de problemas de librerías sino de problemas con tus variables.
cpmario:
Para empezar en InnoSetup los archivos del sistema al menos son 9 y se registran así.
--- Código: Text ---[Files]; begin VB & system filesSource: "stdole2.tlb"; DestDir: "{sys}"; OnlyBelowVersion: 0,6; Flags: restartreplace uninsneveruninstall sharedfile regtypelibSource: "msvbvm60.dll"; DestDir: "{sys}"; OnlyBelowVersion: 0,6; Flags: restartreplace uninsneveruninstall sharedfile regserverSource: "vb6es.dll"; DestDir: "{sys}"; OnlyBelowVersion: 0,6; Flags: restartreplace uninsneveruninstall sharedfileSource: "oleaut32.dll"; DestDir: "{sys}"; OnlyBelowVersion: 0,6; Flags: restartreplace uninsneveruninstall sharedfile regserverSource: "olepro32.dll"; DestDir: "{sys}"; OnlyBelowVersion: 0,6; Flags: restartreplace uninsneveruninstall sharedfile regserverSource: "asycfilt.dll"; DestDir: "{sys}"; OnlyBelowVersion: 0,6; Flags: restartreplace uninsneveruninstall sharedfileSource: "comcat.dll"; DestDir: "{sys}"; OnlyBelowVersion: 0,6; Flags: restartreplace uninsneveruninstall sharedfile regserver; end VB system files 9
Los OCX se registran así:
--- Código: Text ---Source: COMDLG32.OCX; DestDir: "{sys}"; Flags: sharedfile restartreplace regserverSource: CMDLGES.DLL; DestDir: "{sys}"; Flags: sharedfile Fijate en los Flags.
Pero es poco probable que sean la causa del error que muestras.
Debes de hacer rutinas para manejo de errores y que descubras en que evento o subrutina de genera el error. Esto normalmente de maneja con 'On Error Goto'
:comp:
Jimbenit:
... Bien, pero en mi PC no se produce el desbordamiento, sino en otro pc... estaba pensando que era por las muchas variables de tipo double que estaba usando, y esto tal vez me produciria un exceso en el uso de la memoria del pc, la explicacion que le daba era que mi pc usa 2 GB de memoria RAM y en donde se produjo el error era de 512 MHZ, por eso pensaba de esa manera...
Si mi error fuera tan basico como me muestra Nebire, por que entonces no se produce el desbordamiento en mi pc....?, de esa manera me resultaria super facil evitar el error, depurarlo y ya...
el problema es que no lo veo (ya que no es en mi PC que se produce)...
Saludos.,... Aun sigo pensando amigo Nebire
Jimbenit:
--- Cita de: "cpmario" ---Pero es poco probable que sean la causa del error que muestras.
Debes de hacer rutinas para manejo de errores y que descubras en que evento o subrutina de genera el error. Esto normalmente de maneja con 'On Error Goto'
:comp:
--- Fin de la cita ---
Asi es amigo, es poco probable...
Personalmente no me gusta usar la instruccion On error goto ya que es anti-estructurada... no tiene estructura definida.. mas bien se presta para el desorden y dificil comprension del codigo, por eso evito en usarla...
Navegación
[#] Página Siguiente
Ir a la versión completa