|
111
|
Programación / Programación Visual Basic / Pequeño problema en Visual Basic 6.0
|
en: 23 Agosto 2010, 17:01 pm
|
Hola a toda la gente del foro:
Tengo un pequeño problema en Visual Basic 6. Verán: Estoy haciendo un sistema de adquisición de datos con un microcontrolador ATMEGA16, el cual se conecta a una PC mediante el puerto serie RS232. La interfaz de la PC la hice en Visual Basic 6.0, utilizando el control MSComm.
Al ejecutar el programa en el IDE todo funciona correctamente. Si lo compilo y ejecuto el archivo .EXE todo funciona correctamente. El problema viene cuando trato de ejecutar el archivo .EXE en una computadora que no tiene instalado Visual Basic (repito, el archivo .EXE, el compilado). Si trato de ejecutarlo me manda un mensaje de error, especificando que no se reconoce el componente MSComm1.
En este caso ¿Es forzoso que la PC deba tener instalado Visual Basic para que el programa se ejecute? ¿O sólo hay que instalar algún driver o algo así?
Gracias por su atención.
PD: Les informo que el problema lo solucioné instalando Visual Basic en la PC. Pero sería fastidioso instalar Visual Basic en cada una de las computadoras donde se tenga que ejecutar el programa. Por eso quisiera saber si hay alguna otra manera.
|
|
|
112
|
Programación / Programación Visual Basic / Re: VB6: ComboBox con "Separador" de texto
|
en: 23 Agosto 2010, 16:44 pm
|
Buen día, muchacho(a): Prueba con este sencillo código y si no te sirve (o no te gusta), lo siento, no puedo hacer más por tí. Para correrlo necesitas un Combo1 y un Text1. En el combo seleccionas la comida o bebida y en el Text te muestra el precio. Option Explicit
Dim precios As New Collection
Private Sub Combo1_Click() Text1.Text = precios.Item(Combo1.ListIndex + 1) If Val(Text1.Text) = 0 Then Text1.Text = " - " End If End Sub
Private Sub Form_Load() Text1.Text = "" Combo1.AddItem ("----comidas----") precios.Add "" Combo1.AddItem ("pizza") precios.Add 110 Combo1.AddItem ("pollo") precios.Add 65 Combo1.AddItem ("choripan") precios.Add 20 Combo1.AddItem ("----bebidas----") precios.Add "" Combo1.AddItem ("agua") precios.Add 8.5 Combo1.AddItem ("cerveza") precios.Add 15 Combo1.AddItem ("gaseosa") precios.Add 10.5 Combo1.AddItem ("vino") precios.Add 30
Combo1.ListIndex = 0 End Sub Saludos.
|
|
|
114
|
Programación / Programación Visual Basic / Re: [RETO] ¿Fácil? Buscando los números de Lychrel
|
en: 19 Agosto 2010, 00:59 am
|
Disculpen, es cierto. Según yo ya devuelvo numero final en este código. Private Function EsNumLychrel5b(ByVal num As Long, ByRef numeroFinal As Double, Optional ByVal iteraciones As Long = 50) As Boolean Dim n As Double, nrev As Double If num And &H80000000 Then Exit Function n = num Do While iteraciones > 0 nrev = dblReverse(n) If n = nrev Then numeroFinal = n Exit Function End If n = n + nrev iteraciones = iteraciones - 1 Loop nrev = dblReverse(n) If n = nrev Then Exit Function EsNumLychrel5b = True numeroFinal = n Si alguien gusta hacerle alguna modiicación ¡Adelante!
|
|
|
115
|
Programación / Programación Visual Basic / Re: [RETO] ¿Fácil? Buscando los números de Lychrel
|
en: 19 Agosto 2010, 00:29 am
|
Disculpen, hace rato puse mi código pero con instrucciones basura que nada que ver con el proceso (era para probar ciertas funciones). Aquí se los dejo corregido. Tiene prácticamente la misma velocidad de antes, pero sin ese código basura. Private Function EsNumLychrel5(ByVal num As Long, ByRef numeroFinal As Double, Optional ByVal iteraciones As Long = 50) As Boolean Dim n As Double, nrev As Double If num And &H80000000 Then Exit Function n = num Do While iteraciones > 0 nrev = dblReverse(n) If n = nrev Then Exit Function n = n + nrev iteraciones = iteraciones - 1 Loop nrev = dblReverse(n) If n = nrev Then Exit Function EsNumLychrel5 = True numeroFinal = n End Function
|
|
|
116
|
Programación / Programación Visual Basic / Re: [RETO] ¿Fácil? Buscando los números de Lychrel
|
en: 18 Agosto 2010, 23:29 pm
|
Aquí dejo un nuevo código, basado en la función que nos mostró Karcrack. Private Function EsNumLychrel5(ByVal num As Long, ByRef numeroFinal, Optional ByVal iteraciones As Long = 50) As Boolean Dim n As Double, nrev As Double, sp As String If num And &H80000000 Then Exit Function n = num sp = "1234" Do While iteraciones > 1 nrev = dblReverse(n) If n = nrev Then Exit Function n = n + nrev iteraciones = iteraciones - 1 Loop nrev = dblReverse(n) If n = nrev Then Exit Function EsNumLychrel5 = True numeroFinal = n End Function Y la función de Karcrack (modificada para que pueda manejar doubles y no sólo longs): Public Function dblReverse(ByVal lDbl As Double) As Double Do dblReverse = dblReverse * 10 + (lDbl - (10 * Fix(lDbl / 10))) lDbl = Fix(lDbl / 10) Loop While lDbl > 0 End Function Efectivamente es más rápido. Saludos.... Y muchas gracias Karcrack.
|
|
|
117
|
Programación / Programación Visual Basic / Re: [RETO] ¿Fácil? Buscando los números de Lychrel
|
en: 18 Agosto 2010, 20:51 pm
|
Aquí les dejo otra versión que según yo es más rápida. Private Function EsNumLychrel5(ByVal num As Long, ByRef numeroFinal, Optional ByVal iteraciones As Long = 50) As Boolean Dim n As Double, nrev As Double If num And &H80000000 Then Exit Function n = num Do While iteraciones > 1 nrev = CDbl(StrReverse(n)) If n = nrev Then Exit Function n = n + nrev iteraciones = iteraciones - 1 Loop nrev = CDbl(StrReverse(n)) If n = nrev Then Exit Function EsNumLychrel5 = True numeroFinal = n End Function ¡Buen día!
|
|
|
118
|
Programación / Programación Visual Basic / Re: [RETO] ¿Fácil? Buscando los números de Lychrel
|
en: 18 Agosto 2010, 20:35 pm
|
Buen día, gente. Aquí les dejo mi aporte: Private Function EsNumLychrel4(ByVal num As Long, ByRef numeroFinal, Optional ByVal iteraciones As Long = 50) As Boolean Dim n As Double, snrev As String If num And &H80000000 Then Exit Function n = num Do While iteraciones > 1 snrev = StrReverse(n) If CStr(n) = snrev Then Exit Function n = n + CDbl(snrev) iteraciones = iteraciones - 1 Loop snrev = StrReverse(n) If CStr(n) = snrev Then Exit Function EsNumLychrel4 = True numeroFinal = n End Function Por el momento es todo. Saludos.
|
|
|
119
|
Informática / Electrónica / Re: Problema con el amperaje de mi nuevo proyecto
|
en: 18 Agosto 2010, 04:51 am
|
muchas gracias por ayudar, pero la fuente secundaria que alimenta mi circuito es de 5V-450mA podriais decidme un chip que haga lo mismo pero a 5V Tengo entendido que ese integrado no sólo funciona con 12 V. Igual te puede funcionar con 5 V (Al fín y al cabo sólo son transistores). En mi humilde opinión, si sólo vas a usar un relevador, no tiene caso que lo utilices. Puedes hacerlo con un simple transistor (y su diodo de protección, claro). Saludos.
|
|
|
|
|
|
|