Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Alex Rodríguez

Páginas: 1 ... 81 82 83 84 85 [86] 87 88 89 90 91 ... 93
1701
Hola, aquí te dejo un link a un manual de Turbo Basic (en inglés):

http://bitsavers.informatik.uni-stuttgart.de/pdf/borland/Borland_Turbo_BASIC_Owners_Handbook_1987.pdf

También disponible aquí: http://es.scribd.com/doc/56593631/Borland-Turbo-BASIC-Owners-Handbook-1987

O aquí: http://www.codeproject.com/script/News/View.aspx?nwid=20618

El asunto es que TurboBasic es un lenguaje de los años ochenta que prácticamente se ha dejado de usar, por eso es quizás un poco difícil conseguir información. Además, al escribir en el foro te recomiendo que pongas en el título aquello sobre lo que quieres consultar, por ejemplo si es sobre turbo basic pon ayuda sobre turbo basic, si pones simplemente por favor ayuda es más difícil que se lea tu consulta y que obtengas respuesta porque no queda claro sobre qué preguntas.

Si vas preparando código puedo intentar echarte una mano con las dudas que te surjan, suerte.


1702
Hola, veo que has hecho una revisión completa y detenida, y para mí el problema principal sigue estando en torno a que si un error no es reproducible se convierte en difícil su corrección. Lo del control de estado no he usado nunca una rutina que haga esa tarea de forma automática. Más bien lo suelo preparar manualmente con impresiones por pantalla, o bien usando "breakpoints" para detener la ejecución y comprobar el valor de variables con el debugger. Esto es útil, pero sobre todo cuando se sabe lo que se busca, en tu caso como bien dices si no sabes exactamente dónde buscar tendrías tantas posibilidades y posibles combinaciones que difícilmente vas a poder llegar a conclusiones.

Se me han ocurrido un par de cuestiones que no sé si has probado: la primera, la posibilidad de que sea otra propiedad de printer la que se esté desconfigurando, por ejemplo PaperSize. Habría que revisar o configurar todas las propiedades que pudieran estar influyendo. La segunda, mostrar un cuadro de diálogo de impresión del tipo que se indica en esta url: http://msdn.microsoft.com/en-us/library/aa227613%28v=vs.60%29.aspx quizás lograra evitar problemas



1703
Creo que tienes el problema bastante acotado, si no tienes un indicio claro tendrías que hacer la depuración comprobando elemento a elemento qué es lo que genera el fallo; podrías ir comentando el código por fragmentos, cambiando nombres de variables para comprobar que no existe un conflicto de nombres, etc. El problema principal es que si el fallo no es reproducible tampoco puede existir una estrategia de depuración clara. Para mí lo primero sería tratar de hacer el fallo reproducible, investigar en qué circunstancias es en las que se produce el fallo. Podrías tratar de introducir un "control de estado" que se muestre por pantalla cada vez que se imprime, donde te informe de cuáles son los formularios activos, el contenido de las variables en ese momento, conexiones abiertas, etc. y comparar el estado cuando hay fallo y cuando no hay fallo. De cualquier manera es algo que resultaría costoso y tampoco te aseguraría que alcanzaras una solución porque como indicas podría tratarse de un bug o de un conflicto con el software de impresora ó sistema operativo y en ese caso no sacarías nada en claro con el control de estados...




1704
Hola Alejandro, he estado mirando el código e imágenes y desde luego resulta complicado... Te voy a comentar algunas cuestiones y hacerte algunas preguntas:

a) Cuando has hablado del error 28 y de que estás tratando de investigar en torno a este error ¿por qué es que estás investigando sobre este error? ¿porque ocasionalmente se te detiene el programa trabajando con él y te informa de este error? ¿tienes alguna evidencia que relacione este error con el problema de impresión o no hay seguridad de la relación entre ambos problemas?

b) Cuando has hablado del problema con la impresión y el tamaño de fuente y el que piensas que puede estar relacionado con saturación de memoria, pila de llamadas, tamaño del módulo bas, etc. ¿tienes alguna evidencia de que puede haber alguna relación entre estas cuestiones y el problema de impresión?

c) ¿La aplicación tiene otros problemas destacables además del problema de impresión?


Ahora comentarios respecto a algunas cuestiones del código:


1) Sobre uso de variables

Formulario MOV_PAGOS

Public FPAGO_POR_DEFECTO As String
Public FLAG_ERROR As String
Public strDOCUMENTO As String
Public codMONEDA As String                'es el Código de la moneda seleccionada
Public strFECHA As String
Public codFPAGO As String


Aquí veo cosas que me llaman la atención porque a priori yo no las plantearía así, no digo que estén bien o que estén mal, sino que me llaman la atención. ¿Por qué declarar todo como String pudiendo usar otro tipo de variables que son más eficientes tanto a la hora de procesarse como de consumo de memoria? Por ejemplo FPAGO_POR_DEFECTO supongo que es una forma de pago, y quizás hay 5, 10 ó 20 formas de pago. ¿Por qué usar un String cuando puedes usar un Integer que es mucho más eficiente simplemente estableciendo una equivalencia?

Esto no sé qué importancia puede tener en el global del programa. Desde luego que si afecta a 20, 40 ó 50 variables no tendrá importancia pero si afecta a un gran número de variables habría que verlo.


2) Sobre control de múltiples llamadas a procedimientos que ya están en ejecución. Una fuente de problemas puede ser que si el usuario hace click en un botón, por ejemplo el botón "Imprimir", se produce el evento click sobre este botón y si el usuario ve que tarda un segundo en cargar es posible que vuelva a hacer doble click sobre el botón pensando que no responde. Esto lo que ocasiona es que se dispare de nuevo el evento y que esta llamada y los recursos que consume se acumulen en la pila del programa (lo que puede llevar a una sobrecarga). Frente a esto hay formas de controlar si se está ejecutando el código de respuesta a un evento para impedir que un nuevo click vuelva a disparar el evento ¿Tienes algún tipo de control para evitar esta situación?


3) Tampoco estoy seguro de si puede estar afectando, pero una recomendación que se suele hacer es no confiar en que las variables u objetos de tipo recordset, database, workspace, etc. se destruyan automáticamente cuando se cierran ventanas o procedimientos locales. Por ejemplo con el evento unload proceder a realizar algo como llamar a una función para cerrar todo:

'--------------------------------------------------
Public Function CloseAllRecordsets() As Integer
'--------------------------------------------------
on error resume next
'Asegurar el cierre y liberación de memoria


'A ubicar en respuesta a cierre de menús o ventanas según proceda

Dim wsCurr As Workspace
Dim dbCurr As Database
Dim Rs As Recordset
Dim Frm As Form

For Each wsCurr In Workspaces
   For Each dbCurr In wsCurr.Databases
      For Each Rs In dbCurr.Recordsets
         MsgBox "El recordset " & vbCrLf & Rs.Name & vbCrLf & _
Rs.RecordCount & " registros abiertos, se procede a su cierre.", vbCritical, "Validation"
         Rs.Close
         Set Rs = Nothing
      Next

      dbCurr.Close
      Set dbCurr = Nothing
    Next

    wsCurr.Close
    Set wsCurr = Nothing
Next

End Function


1705
Voy a echarle un vistazo a ver si veo algo y ya te comento...

1706
¿Qué tal? El asunto es que tú conoces el programa, conoces el código y yo opino "a ciegas" con lo cual es muy difícil atinar con qué puede ser lo que esté causando el problema. Una cosa que se me ocurre y con la que he tenido problemas en algunas ocasiones es que visual basic 5 y visual basic 6 tienen algunos problemas de incompatibilidad con sistemas de 64 bits. Ahora mismo los pcs que se están vendiendo en los últimos meses y años ya están viniendo todos con sistemas operativos de 64 bits. La verdad es que como te digo es una opinión a ciegas porque sin código y sin poder testear el problema... son poco más que especulaciones ???


1707
Tienes razón juanito, pero no sabemos si en la instalación concreta de que estamos hablando pueden tener una u otra extensión, o en caso de que tengan jsecure si la versión de pago o la gratuita.

1708
La modificación del acceso a la administración del sitio joomla se suele hacer mediante una extensión que se instala sobre joomla. Lo ideal sería que pudieras conocer cuál es la clave o palabra secreta. Si no puedes, habría que investigar empezando por saber ¿qué versión de joomla es? ¿qué extensión de joomla es la que se ha usado para modificar la forma de acceso? Hay dos extensiones bastante usadas:

adminexile: para saber si se trata de esta extensión mira en la ruta httpdocs/plugins/system y comprueba si existe una carpeta denominada adminexile

jSecure: para saber si se trata de esta extensión mira en la ruta httpdocs/plugins/system y comprueba si existe una carpeta denominada jsecure.


1709
Aprender a programar desde cero / Re:Personalizar JOptionPane
« en: 30 de Marzo 2013, 23:21 »
Hola, aquí un ejemplo pero con showOptionDialog

                Object[] options = { "CANCELAR", "IMPRIMIR" };
                JOptionPane.showOptionDialog(null, "Elige imprimir o cancelar", "Aviso",
                JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE,
                null, options, options[0]);


1710
Hola fredy, por lo que entiendo sí puedes ver la página web hecha en joomla, lo que no puedes es acceder al administrator ¿Es así? Si es así lo que se me ocurre es que a veces el acceso a la administración está protegido para evitar los ataques de los hackers y en vez de ser del tipo localhost/misitio/administrator es del tipo localhost/misitio/administrator/?cadenaSecreta

Cuando escribes localhost/misitio/administrator lo que haría sería llevarte al sitio, mientras que tienes que escribir un añadido para acceder a la administración de joomla. Ese añadido es como una clave, tendrías que conocerla para poder acceder. No es seguro que sea eso pero es una posibilidad.


1711
Los comportamientos aparentemente aleatorios son como dices bastante molestos porque esquivan la posibilidad de repetir el error y hacer pruebas. Pero en el 99,99% de los casos son sólo aparentemente aleatorios, es decir, en el fondo hay algo que ocurre que justifica que ocurra así. Por ejemplo hay páginas web que a veces se comportan de una manera y a veces de otra, de forma aparentemente aleatoria. Sin embargo, lo que ocurre es que javascript no carga bien y esto es debido al servidor o a una baja velocidad de conexión a internet, parece aleatorio pero es explicable, aunque a veces sea difícil dar con esa explicación.

¿Por qué no declaras ese valor como una constante en vez de como una variable? Saludos

1712
Hola, desde mi punto de vista el tamaño máximo o límite de un .bas (en líneas de código o en cantidad de variables, pila de llamadas) es el límite de recursos disponibles (memoria principalmente) que tenga el sistema. Tendría que ser algo muy grande para que llegaras a alcanzar ese límite.

Por la descripción del problema que haces no creo que sea posible decir directamente qué es lo que puede estar pasando. A mí la primera impresión que me da es que puedes tener un conflicto de nombres: que estés usando el mismo nombre de variable en dos ámbitos distintos, o que en algún punto del programa tenga lugar un cambio del valor de la variable global. Yo empezaría a buscar por ahí, por un posible conflicto de nombres.

¿Qué versión de visual basic estás usando?

1713
Comunidad / Re:sobre el crackeo de redes wifi
« en: 20 de Marzo 2013, 08:08 »
Asus si no me equivoco suele tener como tecla para acceder al menú de arranque ESC, apaga el ordenador con el cd dentro y arráncalo pulsando ESC y espera a que te aparezca el menú, luego elige el CD drive como dispositivo de arranque.

1714
Comunidad / Re:sobre el crackeo de redes wifi
« en: 13 de Marzo 2013, 08:19 »
¿Sabes la marca y modelo de tu ordenador?

1715
¿puedes poner el código que pusiste antes en este hilo pero usando el formato de código?

1716
Hola Sandra, para pegar código debes hacerlo cuando estés escribiendo el mensaje pulsando el icono # que aparece en el editor del foro y pegando el código entre las etiquetas code y /code que te aparecerán entre corchetes, si no lo haces así no sale bien

Ejemplo:

Código: [Seleccionar]
Aquí va el código
Otra línea
Otra línea
#include <stdio.h>
#include <conio.h>
int main ()
{
int i, j, x, aux, num[10];
etc
etc

Saludos.

1717
Comunidad / Re:sobre el crackeo de redes wifi
« en: 07 de Marzo 2013, 08:20 »
El cd no tienes que ejecutarlo, tienes que usarlo como disco de arranque (live cd o boot cd). Para ello tienes que tener apagado tu ordenador, darle a encender y al mismo tiempo mantener pulsada la tecla que te permita elegir el dispositivo desde el que vas a arrancar el ordenador (en el mio la tecla es F12 pero según el ordenador puede cambiar), una vez te salga un menú para elegir el dispositivo elige el cd drive y el ordenador arrancará desde el cd y accederás a la distribución de linux que estés cargando.

1718
Comunidad / Re:sobre el crackeo de redes wifi
« en: 05 de Marzo 2013, 08:08 »
Elige la opción "iso a cd"

1719
Con la información que aportas no sería capaz de decir exactamente qué es lo que está pasando. Mi recomendación sería que investigues un aspecto y dejes de lado los demás. Un aspecto clave es: si tienes un menú que debe estar visible para los usuarios administradores ¿por qué no se muestra? Yo respondería esto antes de enredarme a tratar de averiguarlo todo.

Los pasos que sería normal dar:

1) Cambiar a otra plantilla y comprobar qué ocurre con la visualización (tener en cuenta que si la otra plantilla no tiene el mismo nombre de posición habrá elementos que no se visualicen)

2) Ver qué pasa situando el menú en otra posición de plantilla donde sepas que hay cosas visibles. Es posible que te esté fallando la posición de plantilla. Quizás estés invocando a una posición de plantilla que no existe.

3) Revisar la configuración del menú: ver para qué tipo de usuarios está configurado. Cambiar la configuración y ponerlo como público para todos los usuarios ¿de esta manera llega a verse? Revisar los parámetros del menú. Si tiene un módulo asociado ¿es posible que el módulo no tenga asociadas vistas y por eso no se esté mostrando?

4) Crear el menú nuevamente, es posible que el menú esté corrupto. ¿De esta manera llega a verse?

5) Crear un nuevo usuario con privilegios y probar con el nuevo usuario, puede que el usuario con que estás probando esté corrupto o se haya desconfigurado.

6) Comprobar la estructura de archivos. A veces operando por ftp se mueven carpetas dentro de otras involuntariamente. Comparando la estructura de archivos con la esperable (de joomla desempaquetado o de un backup previo) ¿se aprecia algo anómalo?

7) ¿se tiene un backup previo?


1720
Hola si no pones algo de código o lo explicas mejor no acabo de entender a qué te refieres. Saludos.

Páginas: 1 ... 81 82 83 84 85 [86] 87 88 89 90 91 ... 93

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".