Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

contador de visitas en una aplicación

Estas en el tema de contador de visitas en una aplicación en el foro de Visual Basic clásico en Foros del Web. Hola, quiero poner un contador de visitas en una aplicacion, y no se como hacerlo, pq claro si yo pongo un contador cont que en ...
  #1 (permalink)  
Antiguo 11/03/2009, 03:12
 
Fecha de Ingreso: febrero-2007
Mensajes: 79
Antigüedad: 17 años, 2 meses
Puntos: 0
contador de visitas en una aplicación

Hola, quiero poner un contador de visitas en una aplicacion, y no se como hacerlo,
pq claro si yo pongo un contador cont que en un principio valga 0 y luego vaya incrementando no me vale, pq cada vez que abro la aplicación vuelve a valer 0 y nunca cuenta, siempre me tendrá el mismo valor.... creo q lo tendría que hacer entonces utilizando algún evento no?
El caso es que la aplicación quiero que tenga un periodo de prueba de 30 veces y que cuando pase eso ya no le deje usarla.... alguien sabe como es??

Gracias!!
Saludos!.
  #2 (permalink)  
Antiguo 11/03/2009, 03:19
 
Fecha de Ingreso: marzo-2009
Mensajes: 23
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: contador de visitas en una aplicación

para hacer eso le vas a tener que agregar una base de datos y protegerla para que no te la modifiquen. o sino asignar el valor en el registro de windows.

Edit: Mira aqui arme algo basico para que pruebes y dsp me cuentas:

1)Crea un base de datos:

DB: bd1 (o sino cualquier otro pero recuerda modificarlo en el modulo)
Tabla: cont
Columnas:

- Id: Autonumerio + Clave Principal
-Count: Numero

2)Abre VB y dentro del menu Proyecto--> referencias habilita : Microsoft DAO 3.6 Object Library.
3)Luego crea un modulo y declara lo siguiente:

Código:
Public DB As DAO.Database
Public cont As DAO.Recordset

Public Sub ABRIR()
Set DB = OpenDatabase("bd1.mdb")
Set cont = DB.OpenRecordset("cont")
End Sub

Public Sub CERRAR()
cont.Close
DB.Close
End Sub
4)Y en el formulario principal:

Código:
Private Sub Form_Load()
ABRIR
cont.MoveLast
If cont.RecordCount <= 30 Then  'Aqui verifica si el programa se abrio 30 veces o menos
MsgBox "Puede usar el programa" 'si es verdadero..... Aqui va lo de tu programa
cont.AddNew
cont!cont = cont!cont + 1
cont.Update
Else 'Si es falso el prorgama da un mensaje y se cierra..
MsgBox "El periodo de prueba termino"
Unload Me
End If
End Sub

Private Sub Form_Unload(Cancel As Integer)
CERRAR
Unload Me
End Sub

Espero que te sirva. este es el primer aporte que hago para el foro ya que empeze con visual hace 2 semanas :D..
Si me equivoque en algo solo me lo dicen

Última edición por acc008; 11/03/2009 a las 03:53
  #3 (permalink)  
Antiguo 11/03/2009, 04:29
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: contador de visitas en una aplicación

Hola,
Veo mas factible guardar el valor en una clave del registro de Windows. Las bases de datos de Access no son seguras ni siquiera con contraseña (hay varios programas circulando que la hackean).

En el evento Load del Form de inicio:

Código vb:
Ver original
  1. Dim s As String, i As Integer
  2. s = GetSetting(App.EXEName, "Settings", "numero")
  3. If s = "" Then
  4.     ' es la primera vez que se ejecuta el programa
  5.    SaveSetting App.EXEName, "Settings", "numero", "1"
  6. Else
  7.     i = Val(s) + 1
  8.     SaveSetting App.EXEName, "Settings", "numero", Str(i)
  9. End If
  10. If i > 30 Then
  11.     MsgBox "La demo ha finalizado"
  12.     End
  13. End If

Eso así simplificando. Si además encriptas los valores, pues mas seguro.

  #4 (permalink)  
Antiguo 11/03/2009, 06:20
 
Fecha de Ingreso: febrero-2007
Mensajes: 79
Antigüedad: 17 años, 2 meses
Puntos: 0
Respuesta: contador de visitas en una aplicación

Ok, he probado las dos formas que me habéis comentado y me funcionan.
Muchas gracias a los 2 !!
Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:49.