IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Inhiber la touche MAJ au démarrage


Sujet :

Access

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 86
    Points : 44
    Points
    44
    Par défaut Inhiber la touche MAJ au démarrage
    salut ,

    je souhaite empecher l'accès à ma bd access aux utilisateurs qui appuye sur la touche schift au lancement de l'application. j'ai trouvé dans les FAQ le sujet "Inhiber la touche MAJ au démarrage" qui contient le code pour faire cela, mais je ne vois pas comment utilisé ce code!!!
    Quelqu'un peut il m'aider?

  2. #2
    Membre averti Avatar de temar
    Profil pro
    Étudiant
    Inscrit en
    Août 2004
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2004
    Messages : 316
    Points : 300
    Points
    300
    Par défaut
    Salut,

    J'utilise une fonction bien sympatique, que j'ai récupéré de mon prof de TP (je sais pas s'il la écrit ou récupéré ailleurs, mais je sais qu'il a déja puisé sur ce forum )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Function DefinirToucheMAJ(strBaseDeDonnees As String, blnEtat As Boolean)
    Dim db As DAO.Database
    Dim prp As DAO.Property
    Dim blnResultat As Boolean
    Const PROPRIETE_NON_TROUVEE = 3270
    'Ouvrir la base de données
    If Dir(strBaseDeDonnees) = "" Then
    MsgBox "Base de données introuvable", vbExclamation
    Exit Function
    End If
    Set db = opendatabase(strBaseDeDonnees)
    'Définir la propriété
    On Error Resume Next
    db.Properties("AllowByPasskey") = blnEtat
    If Err.Number = PROPRIETE_NON_TROUVEE Then
    Set prp = db.createproperty("allowbypasskey", dbboolean, blnEtat)
    db.Properties.Append prp
    End If
    'Libérer les objets
    db.Close
    Set db = Nothing
    End Function

    Donc, t'aurais un formulaire, avec un bouton parcourir pour choisir la BDD à protéger, deux boutons radio de choix (activer MAJ ou désactiver MAJ).
    Un bouton d'action, sur lequel tu appelles la fonction ci-dessus (moi je l'ai mise dans un module)...


    Bon courage

    A+

  3. #3
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    Si mes souvenirs sont encore bons
    Tu tape tout le code donné en exemple dans un module, et dans une macro autoexec tu appelle la fonction par:
    Action : ExécuterCode
    Nom Fonction : SetBypassProperty()

    Voila en gros le principe

    Maintenant, si tu veux vraiment empêcher l'accés à ta base, pour en protéger le code, tourne toi plutôt vers un fichier mde
    Bonne continuation
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  4. #4
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 86
    Points : 44
    Points
    44
    Par défaut
    salut,
    j'ai copié le code proposé dans la FAQ dans un module et lorsque je crée la macro autoexec : à "nom de la fonction" je ne que la fonction "ChangeProperty()" peut être que "SetBypassProperty()" et "UnSetBypassProperty()" ne s'affiche pas là bas par ce que se sont des procedures et non des fonctions.

    2- j'ai essayé autre chose en declarant dans le module "SetBypassProperty()" et "UnSetBypassProperty()"plutot comme des functions et non des procedures, et dès lors ,dans la conception de la macro autoexec,après avoir choir "executercode" à nom function je vois les 3 functions SetBypassProperty()" , "UnSetBypassProperty()" et ChangeProperty()" .et je peux selectionner enfin "SetBypassProperty()" . mais au relancement de mon application j'ai le message d'erreur suivant: " Erreur de compilation : type nom defini" et la fonction ChangeProperty() ets marquée en jaune.

    pouvez vous m'aidez avec les etapes à suivre pour appliquer le code spacifier dans la faq pour inhiber la touche maj!!!

  5. #5
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    Ci dessous un code trouvé je ne sais plus très bien ou

    Tape ce code dans un module et appelle la fonction dans ta base au démarrage.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Function DesactiveShift()
        On Error GoTo errdesactiveshift
        Dim DB As Database
        Dim prop As Property
        Const conPropPasTrouve = 3270
        Set DB = CurrentDb()
        DB.Properties("AllowByPassKey") = False
        Exit Function
    errdesactiveshift:
        If Err.Number = conPropPasTrouve Then
            Set prop = DB.CreateProperty("AllowbypassKey", dbBoolean, False)
            DB.Properties.Append prop
            Resume Next
        Else
            MsgBox "Erreur: " & Err.Description
            Exit Function
        End If
    End Function
    Ce code fonctionne, l'ayant déjà utilisé dans plusieurs applications.
    Bonne continuation et au passage merci à celui qui avais mis ce code à disposition
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  6. #6
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 86
    Points : 44
    Points
    44
    Par défaut
    salut,
    freeAccess, j'ai tapé ton code dans un module et j'ai appeler la fonction dans la macro autoexec car je ne sais pas dans quelle partie du code je vais l'appeler? peut être au load de mon 1ere formulaire? en tout cas en appelant dans la macro autoexec,au demarrage de l'application j'ai ce message d'erreur:
    "type non defini" et la ligne "Dim DB As Database " est mise en subrillance bleue

    que faire?

  7. #7
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 86
    Points : 44
    Points
    44
    Par défaut
    toujours personne pour m'aider à ce sujet?!!

  8. #8
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Slt,

    Citation Envoyé par cassidy
    toujours personne pour m'aider à ce sujet?!!
    La FAQ devrait pouvoir t'aider non?

  9. #9
    Membre actif Avatar de ActionAccess
    Inscrit en
    Mars 2006
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 175
    Points : 213
    Points
    213
    Par défaut
    Bonjour,

    Il faut ajouter la référence à DAO.
    Pour cela, VBE ->Outils ->Références puis cocher Microsoft DAO 3...

    Cdlt,
    ActionAccess

Discussions similaires

  1. [AC-2007] Inhiber la touche MAJ au démarrage
    Par jazzala dans le forum Sécurité
    Réponses: 9
    Dernier message: 16/06/2018, 23h14
  2. [AC-2003] Inhiber la touche MAJ au démarrage en cliquant sur une étiquette
    Par SIGER_971 dans le forum Access
    Réponses: 2
    Dernier message: 20/07/2009, 14h04
  3. [A-00] Je n'arrive pas à inhiber la touche MAJ [Sécurité]
    Par marietherese22 dans le forum Sécurité
    Réponses: 2
    Dernier message: 13/10/2008, 23h08
  4. Désactiver la touche MAJ au démarrage
    Par crapouye dans le forum Access
    Réponses: 6
    Dernier message: 06/12/2005, 13h49
  5. Inhiber la touche MAJ au démarrage
    Par aminbouassida dans le forum Access
    Réponses: 3
    Dernier message: 08/09/2005, 12h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo