Creare una Maschera di LOGIN

Anonimo
2018-08-25T08:40:39+00:00

Avrei necessità che qualcuno mi traducesse in VBA una maschera di login per entrare in un database gestionale creato da me dove non esistono utenti amministratori e utenti normali, solo una maschera d'entrata che mi permetta di verificare la licenza stessa del database e la sua scadenza di utilizzo

oggetti creati :

CasellaTesto Utente

CasellaTesto Password

CasellaTesto nascosta ControlloUtente

CasellaTesto nascosta ControlloPassword

CasellaTesto nascosta DataCorrente   ( valore predefinito Date() )  ossia data del calendario del computer

CasellaTesto nascosta DataScadenza  ( valore predefinito  una data inserita da me )

pulsante CmdOK

pulsante CmdAnnulla

In apertura Maschera

DataScadenza e DataCorrente sono delle Date

Se DataScadenza = DataCorrente 

Messaggio : " MI SPIACE MA LA TUA LICENZA E' SCADUTA ", VbOKonly, VbEsclamation, "Titolo: LICENZA SCADUTA "

chiudimi  MSAccess

altrimenti

messaggio : " LA TUA LICENZA SARA' VALIDA FINO AL ( DataScadenza ) ", VbOKonly,        VbEsclamation, "Titolo: AVVISO PER L'UTENTE "

mandami lo stato attivo su Utente

alla subroutine  CmdOK_click

ControlloUtente e ControlloPassword  sono delle stringhe

Se  Utente o Password sono vuoti   allora

Messaggio: " Il nome Utente o la Password non sono stati inseriti " , VbOKonly, VbEsclamation, "Titolo: UTENTE O PASSWORD MANCANTI "

mandami lo stato attivo su Utente

altrimenti

mandami alla routine VerificaUtente

Subroutine VerificaUtente

N = intero

 vai da 1 a 3 tentativi

 Se Utente = ControlloUtente e Password = ControlloPassword     allora

 Messaggio : " BENVENUTO , SEI AUTORIZZATO AD UTILIZZARE IL DATABASE "

 ApriMaschera  " PANNELLO COMANDI "

 ChiudiMaschera  " MASCHERA LOGIN "

 Altrimenti

 Messaggio : " L'UTENTE O LA PASSWORD IMMESSE NON SONO CORRETTE, HAI ANCORA A DISPOSIZIONE (N) TENTATIVI PER INSERIRE I DATI CORRETTI ", VbOkOnly , VbError "Titolo: " UTENTE O PASSWORD ERRATI "

Dopo i 3 tentativi

Messaggio : " I TENTATIVI SONO TERMINATI , VERIFICA BENE L'UTENTE E LA PASSWORD E RITENTA DI NUOVO , SE IL PROBLEMA PERSISTE CONTATTA IL PRODUTTORE PER FARTI MANDARE UN NUOVO UTENTE E PASSWORD GRAZIE " , VbOKonly , VbInformation "Titolo:  ACCESSO NON CONSENTITO "

Chiudimi MSAccess

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

31 risposte

Ordina per: Più utili
  1. Anonimo
    2018-08-27T16:33:23+00:00

    Ciao DavideRossi MN66,

    già da ieri notte era pronta una demo che avrei postato oggi.

    Tanto vale farlo :-)

    Questo è il link da cui poterla scaricare.

    Dunque, è un tantino diversa dalla tua richiesta ma credo molto più performante e sicura in quanto non ha bisogno di controlli nascosti e soprattutto ha in tabella dati crittografati.

    Funziona in questo modo:

    siccome all'inizio il database è vuoto, fornisco nome utente e password, tramite un messaggio visivo, da inserire come prima volta; successivamente, volendo, c'è la possibilità di modificare sia la password che la data di scadenza (inizialmente la data di scadenza vale un mese dall'apertura del database).

    Per la data di scadenza il discorso è diverso:

    ho preferito inserire la password all'interno di una routine in modo che sia solo l'amministratore del programma a conoscerla ed eventualmente modificarla tramite codice.

    La password per la modifica della data di scadenza, senza troppa fantasia,  è il nome che hai dato al tuo profilo:

    DavideRossi MN66

    Quello che manca è la quantità di volte che si può provare ad inserire la password ma non ho voluto farlo perché non ne ho ravvisato la necessità.

    Cioè, una volta che uno sbaglia l'inserimento valido, ad esempio per 5 volte, che succede? Nessuno più vi può accedere?

    Dunque partiamo da questa demo e cerchiamo di svilupparla insieme.

    Vladimiro

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  2. Anonimo
    2018-08-27T16:04:43+00:00

    Ti ringrazio

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2018-08-27T15:49:11+00:00

    Ho provato a fare in questo modo : 


    Private Sub Form_Open(Cancel As Integer)

    Dim DataScadenza As Date

    Dim DataCorrente As Date

    Dim Differenza As Integer

    DataScadenza = Me.DataScadenza.Value

    Differenza = Me.DataDiff.Value

    DataCorrente = Me.DataCorrente.Value

    If Me.DataScadenza.Value <= Me.DataCorrente.Value Then

    MsgBox " MI SPIACE MA LA TUA LICENZA E' SCADUTA ", vbOKOnly + vbCritical, " LICENZA SCADUTA "

    Else

    MsgBox " LA VOSTRA LICENZA SCADRA' IL " & ([DataScadenza]) & " . AVETE ANCORA " & ([Differenza]) & " GIORNI VALIDI PER L'UTILIZZO. ", vbOKOnly + vbInformation, " AVVISO PER L'UTENTE "

    Me.Utente.SetFocus

    End If

    End Sub


    Private Sub CmdOK_Click()

    Dim Utente As String

    Dim Password As String

    Dim ControlloUtente As String

    Dim ControlloPassword As String

    If IsNull(Me.Utente) Or IsNull(Me.Password) Then

    MsgBox " IL NOME UTENTE O LA PASSWORD NON SONO STATI INSERITI ", vbOKOnly + vbExclamation, " UTENTE O PASSWORD MANCANTI "

    Me.Utente.SetFocus

    Else

    VerificaUtente

    End If

    End Sub


    Private Sub VerificaUtente()

    Dim Utente As String

    Dim Password As String

    Dim ControlloUtente As String

    Dim ControlloPassword As String

    Utente = Me.Utente.Value

    Pass = Me.Password.Value

    CUtente = Me.ControlloUtente.Value

    CPass = Me.ControlloPassword.Value

    Dim Volte As Integer

    Me.Utente.SetFocus

    Volte = Volte + 1

    If Me.Utente = Me.ControlloUtente And Me.Password = Me.ControlloPassword Then

    MsgBox " BENVENUTO,SEI AUTORIZZATO AD UTILIZZARE IL DATABASE ", vbOKOnly + vbInformation, " BENVENUTO IN GEST.BINARY "

    Else

    MsgBox " L'UTENTE O LA PASSWORD IMMESSE NON SONO CORRETTE. HAI USATO TENTATIVI " & Volte & " SU 5 DISPONIBILI. ", vbOKOnly + vbCritical, " UTENTE O PASSWORD ERRATI "

        If Volte = 5 Then

        MsgBox " I TENTATIVI SONO TERMINATI , VERIFICA BENE L'UTENTE E LA PASSWORD E RITENTA DI NUOVO , SE IL PROBLEMA PERSISTE CONTATTA IL PRODUTTORE PER FARTI MANDARE UN NUOVO UTENTE E PASSWORD GRAZIE ", vbOKOnly + vbInformation, " ACCESSO NON CONSENTITO "

        Exit Sub

        End If

    End If

    End Sub


    FATTO QUESTO MI FUNZIONA TUTTO A PARTE I 5 TENTATIVI

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2018-08-26T17:20:22+00:00

    Intanto potresti pubblicare quello che sei riuscito a fare fino ad ora.

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2018-08-26T07:27:35+00:00

    Ciao DavideRossi MN66,

    vedo che nessuno ti risponde.

    Prima che arrivi qualche "dirottatore su altri forum" ti anticipo che sarà mia cura darti delle risposte non prima di domani sera però.

    Vladimiro

    La risposta è stata utile?

    0 commenti Nessun commento