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 :

Table et Modules MS_Access


Sujet :

Access

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2025
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2025
    Messages : 10
    Par défaut Table et Modules MS_Access
    Bonjour !
    comment ne pas donner Accès aux Objets MS_Access Tables Et Modules
    Merci d'Avance

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 127
    Par défaut
    Bonjour,

    le plus simple est de publier une version compilée du logiciel et de ne pas mettre access sur les postes utilisateurs mais seulement le runtime

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2025
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2025
    Messages : 10
    Par défaut Table et Modules MS_Access
    Merci Mr: nico84 d'avoir pris de votre temps pour me répondre...
    N'y a t-il pas d'autres moyens autre que le RunTime ?
    Par VBAccess en Exemple ?
    Merci d'Avance...

  4. #4
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 955
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 955
    Par défaut
    bonjour,
    le runtime reste la seule solution de protection efficace d'après ce que j'en sais.
    Sinon, il y a une option pour empêcher l'accès aux modules: depuis le bouton Outils de la fenêtre VBA, option: Propriétés de base XXX, onglet: Protection où on peut verrouiller le projet pour affichage et mettre un mot de passe pour y accéder (surtout ne pas oublier de noter le mot de passe quelque part).

    Et malheureusement, il n'existe pas ce type de protection pour les tables.

  5. #5
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    3 034
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 034
    Par défaut
    Bonjour,
    Et malheureusement, il n'existe pas ce type de protection pour les tables ...
    Pour les tables, on peut quand même masquer la fenêtre des objets d'ACCESS via la prooriété AllowSpecialKeys (équivalent à la touche F11)
    Naguère, je lançais SetStartOptions() à l'ouverture du premier formulaire de la base.
    Ensuite, si besoin , je pouvais permettre "astucieusement" à certains utilisateurs de supprimer les limitations (UnsetStartOptions()).

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    Public Sub SetStartOptions()
        Call ChangeProperty("AllowFullMenus", False)
        Call ChangeProperty("AllowBypassKey", False)
        Call ChangeProperty("StartUpShowDBWindow", False)
        Call ChangeProperty("AllowBuiltInToolbars", False)
        Call ChangeProperty("AllowShortcutMenus", True)
        Call ChangeProperty("AllowToolbarChanges", False)
        Call ChangeProperty("AllowSpecialKeys", False)
    End Sub
     
    Public Sub UnsetStartOptions()
        Call ChangeProperty("AllowFullMenus", True)
        Call ChangeProperty("AllowBypassKey", True)
        Call ChangeProperty("StartUpShowDBWindow", False)
        Call ChangeProperty("AllowBuiltInToolbars", True)
        Call ChangeProperty("AllowShortcutMenus", True)
        Call ChangeProperty("AllowToolbarChanges", True)
        Call ChangeProperty("AllowSpecialKeys", True)
    End Sub
     
     
    Private Function ChangeProperty(strPropName As String, _
                                    varPropValue As Variant) As Boolean
    ' Exemples d'appels
    '#######################
    'Call ChangeProperty("AllowFullMenus", True)
    'Call ChangeProperty("AllowBypassKey", True)
    'Call ChangeProperty("StartUpShowDBWindow", True)
    'Call ChangeProperty("AllowBuiltInToolbars", True)
    'Call ChangeProperty("AllowShortcutMenus", True)
    'Call ChangeProperty("AllowToolbarChanges", True)
    'Call ChangeProperty("AllowSpecialKeys", True)
     
     
    ''Propriétés Explications
    '###############
    ''AllowFullMenu
    'Vous n'aurez plus accès aux fonctionnalités d'Access. Plus aucune option n'est disponible.
    ''AllowBypassKey
    'Vous ne pourrez plus utiliser la touche Shift pour intercepter les procédures de démarrage.
    ''StartupShowDBWindow
    'Vous n'aurez plus accès aux objets de votre base de données.
    ''AllowBuiltInToolbars
    'Vous ne pourrez plus afficher les barres d'outils intégrés.
    ''AllowShortcutMenus
    'Les menus contextuels personnalisés ne sont plus autorisés.
    ''AllowToolbarChanges
    'Vous ne pourrez plus modifier les barres de menus et menus contextuels.
    ''AllowSpecialKeys
    'Vous ne pourrez plus utiliser les touches spéciales d'accès.
     
        Dim varPropType As Variant
     
        'liste des propriétés de démarrage disponibles:
        Select Case strPropName
        Case "AppTitle"
            varPropType = dbText
        Case "AllowFullMenus"
            varPropType = dbBoolean
        Case "AllowBypassKey"
            varPropType = dbBoolean
        Case "StartUpShowDBWindow"          'Fenêtre de base de données
            varPropType = dbBoolean
        Case "StartUpShowStatusBar"         'Masquer la barre d'Etat
            varPropType = dbBoolean
        Case "AllowBuiltInToolbars"
            varPropType = dbBoolean
        Case "AllowShortcutMenus"
            varPropType = dbBoolean
        Case "AllowToolbarChanges"
            varPropType = dbBoolean
        Case "AppIcon"
            varPropType = dbText
        Case "StartUpForm"
            varPropType = dbText
        Case "StartUpShortcutMenuBar"
            varPropType = dbText
        Case "StartUpMenuBar"
            varPropType = dbText
        Case "AllowSpecialKeys"
            varPropType = dbBoolean
        Case "AllowBreakIntoCode"
            varPropType = dbBoolean
        End Select
     
        Dim Dbs As DAO.Database
        Dim prp As Variant
        Const errPropNotFoundError = 3270
     
        Set Dbs = CurrentDb
     
        On Error GoTo Change_Err
     
        Dbs.Properties(strPropName) = varPropValue
        ChangeProperty = True
     
    Change_Exit:
        Set prp = Nothing
        Set Dbs = Nothing
        'rafraîchissement de la barre de titre pour prendre en compte le nouveau titre et/ou icône
        RefreshTitleBar
        Exit Function
     
    Change_Err:
        If err = errPropNotFoundError Then    ' 3270 = Propriété non trouvée.
            Debug.Print "pté non trouvée : " & strPropName
            'Création de la propriété:
            Set prp = Dbs.CreateProperty(strPropName, varPropType, varPropValue)
            Dbs.Properties.Append prp
            Resume Next
        Else
            ' Erreur inconnue.
            ChangeProperty = False
            MsgBox err.Description & err.Number
            Resume Change_Exit
        End If
     
    End Function
    "Always look at the bright side of life." Monty Python.

  6. #6
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 955
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 955
    Par défaut
    bonjour micniv,
    Pour les tables, on peut quand même masquer la fenêtre des objets d'ACCESS via la prooriété AllowSpecialKeys (équivalent à la touche F11)
    en effet, c'est une piste intéressante combinée avec le masquage de la Fenêtre VBA

  7. #7
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2025
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2025
    Messages : 10
    Par défaut Table et Modules MS_Access
    Merci à Vous Tous !

    Je pense que je vais opter pour le RunTime . Si non renommer l'extension de la base accdb par accdr

Discussions similaires

  1. [AC-2000] créer une table par un module macro
    Par Béaté dans le forum VBA Access
    Réponses: 10
    Dernier message: 05/08/2009, 12h56
  2. question sur les tables du module SD (et mm)
    Par verbatim56 dans le forum SAP
    Réponses: 13
    Dernier message: 26/06/2007, 22h41
  3. Réponses: 2
    Dernier message: 09/06/2006, 22h02
  4. Module de mise à jour des champs d'une table
    Par kikaillo dans le forum Access
    Réponses: 14
    Dernier message: 18/04/2006, 09h42
  5. statut d'une table dans un module de donnee
    Par kewine dans le forum Bases de données
    Réponses: 3
    Dernier message: 17/11/2005, 03h56

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