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 :

ouverture en mode exclusif


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 13
    Points
    13
    Par défaut ouverture en mode exclusif
    Bonjour,

    Alors voila, je dois créer une application access réseau qui ne doit etre accessible que par une seule personne a la foi.

    Donc dans tools -> option -> advanced je suis allé coché le mode exclusif. Mais ca ne fonctionne pas, on peut toujours accéder a l'application a plusieurs personnes a la foi.

    Alors je me suis penche sur le bout de code trouvé dans la FAQ

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function Ouvrir_Base_Exclusif2()
    Dim Bd As Database
    On Error Resume Next
    Set Bd = DBEngine(0).OpenDatabase("P:\xchange\Noms_test.mdb", True)
    If Err.Number <> 0 Then
    MsgBox Err.Number & " Impossible d'ouvrir la base en mode Exclusif " & vbCrLf & Err.Description, vbInformation
    Else
    MsgBox "La base de données est ouverte en mode exclusif.", vbInformation
    End If
    End Function
    Alors le code s'exécute bien et tout, mais ca ne change rien, les autres users ont toujours acces a l'application.

    Je seche un peu la.

    Est ce que le mode exclusif n'est pas la bonne voie a suivre?

    Merci d'avance

  2. #2
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Bon en fait, l'exclusivite ou pas n'est pas mon but final. Ce que je cherche a faire, c'est rendre une application access mono user, c-a-d, si une premiere personne est deja connectée, lorsque la deuxieme personne essayera de se connecter a son tour, elle recoit un message d'erreur et se fait ejecter!

    J'ai pense faire une table cachee avec un booleen et une seule ligne de donnée:

    -quelqu'un se connecte, le booleen passe a true
    -il se deconnecte et il repasse a false;

    Donc si une deuxieme personne se connecte, au lancement l'application verifie si le booléen est a true, si oui il se fait ejecter si non il peut utiliser l'application.

    Le probleme de ce systeme est que si l'application plante pour une raison quelconque, le booleen reste a true et tout le monde reste dehors...

    Donc ca n'est pas top....

    Quelqu'un aurait une autre idee?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Salut,

    Je mettrais du code, dans le module de démarrage de l'application, pour mettre automatiquement le booléen à false dès l'ouverture.

    Momo46

  4. #4
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Mais dans ce cas la on perd tout l'interet du systeme, si on met le booleen sur false a chaque démarage, lorsqu'on ira tester ce booleen pour savoir si quelqu'un travaille deja avec l'application, on aura un "non" comme reponse.

  5. #5
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Je viens d'essayer la fonction utilisant DAO. Si la base est déjà ouverte, la fonction lève bien une erreur.

  6. #6
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Salut,

    Mais la fonction d'exclusivite semble se limiter a la modification des forms mais pas des données, je me trompe? J'ai moi aussi un message d'erreur lorsque je veux modifier mes modules etc... mais pour les données des tables, il n'y a aucunes restrictions, on fait des modifications a 2 en meme temps sans problèmes, et c'est justement cela que l'on veut eviter.

    Merci de votre aide

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Salut,

    Mon idée partait de la supposition que tu avais un module de démarrage unique au serveur.
    Les registres de Windows peuvent s'avérer une solution pour l'enregistrement de données de contrôle?

  8. #8
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Bonjour,

    mais pour les données des tables, il n'y a aucunes restrictions, on fait des modifications a 2 en meme temps sans problèmes, et c'est justement cela que l'on veut eviter.
    Si c'est l'unique raison pour laquelle tu veux ouvrir ta base en mode exclusif, Access gère correctement les accès multi-utilisateur... Donc pas besoin de restreindre l'accès à la base de données.

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

  9. #9
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par domi2
    Si c'est l'unique raison pour laquelle tu veux ouvrir ta base en mode exclusif, Access gère correctement les accès multi-utilisateur... Donc pas besoin de restreindre l'accès à la base de données.
    Je sais, c'est ce que j'ai repondu tout de suite, mais on m'a tout de meme demandé de faire en sorte qu'une seule personne puisse accéder a l'application en meme temps.

    Alors je m'exécute

    Donc je réexplique ce que je dois faire, si une personne est deja occupée a utiliser l'application et qu'une autre essaye, la seconde recoit un message d'erreur et se fait ejecter. Ca ne doit quand meme pas etre si complique, et pourtant je seche ^^

    En tout cas merci pour vos reponses

  10. #10
    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

  11. #11
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    J'avais pensé a cette solution la aussi mais en testant la presence du fichier ldb, le probleme etait que parfois le fichier restait present.


    Je viens de tester le code que tu m'as fournis et ca marche nickel.

    Un grand merci a tous pour votre aide

  12. #12
    Membre du Club Avatar de fomy
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 96
    Points : 56
    Points
    56
    Par défaut
    Citation Envoyé par Thargor
    J'avais pensé a cette solution la aussi mais en testant la presence du fichier ldb, le probleme etait que parfois le fichier restait present.


    Je viens de tester le code que tu m'as fournis et ca marche nickel.

    Un grand merci a tous pour votre aide
    Pardon mais de quel code on parle, cette solution m'intéresse aussi svp ?
    C'est dans le lien de Arkham46 ?
    c'est celui ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Function NbConnections() As Integer
    Dim FileNumber As Integer
    Dim Buffer As String
    NbConnections = 0
    FileNumber = FreeFile
    Open Left(CurrentDb.Name, Len(CurrentDb.Name) - 4) & ".ldb" For Binary Access Read As #FileNumber
    While Not EOF(FileNumber)
        Buffer = Input(64, #FileNumber)
        If Buffer <> "" Then NbConnections= NbConnections + 1
    Wend
    Close #FileNumber
    End Function
    par contre je ne sais pas ou placer ce code ?

  13. #13
    Membre du Club Avatar de fomy
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 96
    Points : 56
    Points
    56
    Par défaut
    un petit UP HELp please

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Ouverture en mode exclusif
    Par cluster26 dans le forum VBA Access
    Réponses: 2
    Dernier message: 13/09/2010, 13h34
  2. Réponses: 2
    Dernier message: 07/06/2008, 07h50
  3. Ouverture d'une base en mode exclusif
    Par Miss Ti dans le forum Access
    Réponses: 3
    Dernier message: 31/01/2008, 12h11
  4. Probleme ouverture en mode exclusif
    Par belote dans le forum Sécurité
    Réponses: 1
    Dernier message: 06/09/2007, 15h02
  5. Ouverture en mode exclusif fantôme
    Par Sly2k dans le forum VB.NET
    Réponses: 2
    Dernier message: 26/07/2007, 14h43

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