Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - YAcosta

#1
Bases de Datos / Re: visual basic
20 Noviembre 2018, 01:26 AM
Este no seria un tema de VB6, o de otro lenguaje, tu tema primero pasa por realizar el diseño del sistema, quiza en otro subforo mas pertinente consigas ayuda.

Saludos
#2
ya chequee que esta libreria no necesariamente me va a decir si hay o no internet, me dira el tipo de conexion si pero eso no necesito.

Un amigo me recomendo hacer ping a una pagina, voy a ir por ese camino.

Gracias, salvo mejor idea estare atento.

Saludos
#3
VB6 no está obsoleto, efectivamente no es recomendable para nuevos programadores pero los que aun podemos usarlo lo seguiremos usando por un buen tiempo mas.

Las aplicaciones de VB6 corre sin problemas en Windows X de 32 o 64 bits, esto lo he comprobado. Así que allí tenemos para unos 15 años mas (si esto fuese realmente necesario).
No he probado en instalar el IDE en Windows X pq programar uso maquina virtual con Windows 7 y no veo la necesidad (en mi caso) de hacerlo en Windows X.
Con VB6 uso mucha comunicación via WebServices sin problemas e incluso todo el tema de la facturación electronica con conexión via Api Rest funcionando correctamente.

Programo para móvil con B4A y para web con php, para escritorio no pienso soplarme reescribir todo el código de un soft que lo tengo implementado en varias empresas y estas empresas no perderán nada puesto que tienen para muchos años mas, cuando estas empresas por cuenta propia empiecen a usar mis aplicaciones en su versión móvil o web de forma continua entonces ya no tendré que mantener mis programas en VB6 y allí quizá deje de usar este hermoso lenguaje VB6.


Saludos
#4
Buenas, tenga esta inquietud.

Para poder detectar si tengo o no internet uso la libreria Sensapi.dll
Código (vb) [Seleccionar]

Option Explicit
 
'Constantes para determinar que tipo de Red estamos conectados
Const NETWORK_ALIVE_AOL = &H4
Const NETWORK_ALIVE_LAN = &H1
Const NETWORK_ALIVE_WAN = &H2
 
Private Declare Function IsNetworkAlive Lib "SENSAPI.DLL" (ByRef lpdwFlags As Long) As Long
 
Private Sub Timer1_Timer()
Dim Ret As Long
 
'Si la Api retorna 0 quiere decir que no hay ningun tipo de conexion de Red
If IsNetworkAlive(Ret) = 0 Then
   Label1 = "No hay"
Else
   Label1 = "Si hay"
End If
End Sub


Esto lo ejecuto desde una maquina virtual con conexión a internet, el timer esta con intervalo 2000 y realizo las siguientes pruebas las cuales describo paso a paso:

Ejecuto el programa y no lo detengo

Obtengo el mensaje "Si hay":  CORRECTO
Dentro de Windows deshabilito la red y el programa indica "No hay": CORRECTO
Lo vuelvo a habilitar y obtengo un "Si hay": CORRECTO
A la maquina virtual le quito la red y obtengo "No hay":  CORRECTO
Lo vuelvo a activar y obtengo "Si hay":  CORRECTO
En ese momento me voy al router y lo apago y el programa cambia a "No hay".  CORRECTO
Hasta aqui Bingo pero...

Con el router apagado voy al programa y lo detengo, lo vuelvo a ejecutar y obtengo un "Si hay" pero el router está apagado!!!

¿porque sucede esto estimados?

Quedo a la espera de sus comentarios, muchas gracias

#5
Hola amigo:
Esta es la web:
http://reporteslegales.com/josecampos/

Si no ves cambios en vivo es porque tenemos la aplicación apagada.

Y si, efectivamente hay cierto riesgo con el inyection pero hasta donde converse con Jose este tema no sera publico, claro que actualmente si lo esta pero es porque esta en pruebas en uno de mis dominios para testeos, igual se deben tomar las contingencias necesarias como la integridad, el acceso restringido, etc etc.

Saludos
#6
Saludos.

Bueno, lo que hice básicamente fue conectar la aplicación VB6 a la base de datos alojado en un hosting y luego solo bastaba leer desde la web la información de esa BD, para actualizar sin recargar use AJAX, no creo que se requiera publicacion de codigo pero si alguien le interesa lo publico con gusto (la verdad no estoy en la pc de casa).

Saludos
#7
Programación Visual Basic / Re: ucDownload (source)
21 Septiembre 2011, 06:37 AM
Se que este hilo es antiguo, pero solo para decir que este code funciona 100% excelente. gracias Cobein
#8
Hola, para pintar un Grid tipo cebra llamo a este procedimiento :
Call ZebraGrid(Grid)    ____Esto lo pongo en el load del form
y ese procedimiento tiene esto (El grid que uso es el MSHFlexGrid):

Public Sub ZebraGrid(Flex As Object)
Call AltLVBackGroundFlex(Flex, RGB(255, 255, 255), RGB(230, 243, 255))
End Sub


(Lo llamo con ZebraGrid porque originalmente tiene mas parametros que uso para formatear algunas columnas).
255,255,255 es blanco y 230,243,255 es un celeste pastel
El codigo de AltLVBackGroundFlex es este:

Public Sub AltLVBackGroundFlex(Flex As Object, ByVal BackColorOne As OLE_COLOR, ByVal BackColorTwo As OLE_COLOR)
Dim Row            As Long
Dim Col            As Integer
With Flex
   .Redraw = False
   .BackColor = BackColorOne
   For Row = 1 To .Rows - 1 Step 2
      .Row = Row
      For Col = 1 To .Cols - 1
         .Col = Col
         .CellBackColor = BackColorTwo
      Next
   Next
   .Redraw = True
End With
End Sub


Hasta aquí todo perfecto, nada del otro mundo, es bastante usable.
El problemilla que tengo es que se me ha pedido ordenar las filas haciendo clic en la cabecera del grid, el ordenamiento ya lo tengo resuelto, pero se me echa a perder el pintado del grid porque a cada clic que se le hace se desordenan los colores mas y mas tendiendo a ponerse todo el grid de un solo color (el del celeste pastel).
Para querer resolverlo sin éxito puse este codigo:

If Grid1.MouseRow = 0 Then
   Call RSel(Grid1, True)    <--- Con esto ordeno las filas
   Grid1.BackColor = vbWhite  <--- Con esto quise que me pinte todo el grid en blanco y luego aplique el zebra
   Call ZebraGrid(Grid)
End If


Pero Grid1.BackColor no me cambia el color de todo el grid como lo esperaba, creo que es porque ya aplique CellBackColor y no me deja.

Por siaca les pongo el codigo de RSel.

Public Sub RSel(Miflex As MSHFlexGrid, Ordenar As Boolean)
If Ordenar Then
    If Miflex.MouseRow = 0 Then
        If ContaClick = 1 Then
            Miflex.Sort = ContaClick
            ContaClick = 2
        Else
            Miflex.Sort = ContaClick
            ContaClick = 1
        End If
    Else
        Miflex.Col = 0
        Miflex.ColSel = Miflex.Cols - 1
    End If
Else
    Miflex.Col = 0
    Miflex.ColSel = Miflex.Cols - 1
End If
End Sub


Espero me puedan dar una mano, gracias.