Condividi tramite

ACCESS 2003 Nascondere la finestra del DB o struttura disattivando lo shift.

Anonimo
2013-03-16T00:03:03+00:00

Ciao a tutti,

anche oggi ho bisogno del vostro cortese aiuto quindi vi sottopongo il mio nuovo problema.

ho due database il nr 1 contiene solo le tabelle il nr 2 le tabelle collegate al primo e tutte le maschere query macro.

Sia nel 1 che nel 2 devo nascondere la finestra del DB quando si tiene premuto lo shift.

Ho letto tanti post e quello piu' adatto alle mie esigenze è il seguente, perché mi dà la possibilità di gestire lo shift con una password inserita in un txt.

A  Il problema che incollando il codice  in un modulo non funziona!!!! Tenendo premuto shift il DB si apre normalmente.

B  Inoltre sarebbe fantastico poter  inserire la password in una maschera che si apre solo quando si tiene premuto il pulsante.  Se la ps è corretta appare la finestra , altrimenti si apre nascondendo la finestra.

Mi rendo conto che chiedo troppo e quindi mi accontenterei di nascondere la finestra del db con il file txt come mio modulo copiato di seguito.

Non ho molta esperienza di moduli e così il codice l'ho copiato su un nuovo modulo di classe e su un modulo normale. ma il risultato no cambia.

Vi ringrazio in anticipo per me è molto importante per il mio lavoro.

Option Compare Database

Option Explicit

Function BloccaShift()

On Error GoTo errDisableShift

Dim PS, SS, NomeFile

NomeFile = "D:\Dati\12 LAVORO\DATABASE\Laboratorio per prove\Database\agenti\pwd.txt"

Open NomeFile For Input As #1 ' Apre il file per l'input.

Input #1, PS, SS

Input #1, PS, SS

Close #1    ' Chiude il file.

Dim db As Database

Dim prop As Property

Const conPropNotFound = 3270

Set db = CurrentDb()

db.Properties("AllowByPassKey") = IIf(InStr(SS, 0) = 15, False, True)

Exit Function

errDisableShift:

If Err = conPropNotFound Then

Set prop = db.CreateProperty("AllowByPassKey", dbBoolean, False)

db.Properties.Append prop

Resume Next

Else

Beep

MsgBox "La funzione 'DisableShift' non è stata eseguita correttamente." & vbNewLine & _

"Esco dall'applicativo", vbInformation

Close #1

DoCmd.Quit

Exit Function

End If

Exit Function

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

Risposta accettata dall'autore della domanda

  1. Anonimo
    2013-03-17T12:07:12+00:00

    [...]

    Come fa a disabilitarsi lo shif se il codice lo lego alla maschera di apertura ?

    [...]

    Ciao Christian\_boy,

    ho parlato di maschera di apertura non tanto per la disabilitazione dello Shift quanto per il test sul contenuto di quel file di testo cui si fa riferimento nel codice (Open NomeFile, ecc.). Sei consapevole vero che perché quel codice funzioni ci vuole un file di testo con un certo contenuto? Immagino di sì perché dovresti aver già letto il thread di cui parlavo come "antico post"...

    La risposta è stata utile?

    0 commenti Nessun commento

10 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2013-03-17T08:47:48+00:00

    spero di saltarci fuori.

    Grazie Maurizio

    buona giornata

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2013-03-17T05:24:19+00:00

    Ciao Christian\_boy,

    1. Ho supposto qualche pezzo mancante perché la funzione da te incollata nel tuo post non termina con "End Function". Un tuo errore di trascrizione?
    2. In questo antico postl'amico @Alex spiega più che bene vantaggi e svantaggi del metodo e c'è pure la Function completa. Leggi tutto con attenzione.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2013-03-16T23:18:23+00:00

    Ciao Maurizio

    Mi puoi dare qualche dritta. Dove devo inserire il codice per fare in modo che si attivi all'apertura del database con shift premuto.

    Quale pezzo è mancante .Io ho copiato un codice da un post, quale è il pezzo mancante.

    Mi puoi scrivere tutto il codice completo.

    grazie

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2013-03-16T07:16:00+00:00

    Ciao Christian\_boy,

    da qualche parte avrai pur invocato questa funzione perché funzioni. Dove?

    Di solito la si invoca nella routine-evento "Form_Load" della prima maschera che viene aperta dall'applicazione. O nella macro "AutoExec".

    Aggiungo: ho dato per scontato che il pezzo mancante alla fine del codice dipenda dal tu copia/incolla.

    La risposta è stata utile?

    0 commenti Nessun commento