Acceder à base de données access sécurisée [Résolu]

Messages postés
39
Date d'inscription
dimanche 28 novembre 2004
Dernière intervention
4 juin 2007
- 4 juin 2007 à 07:46 - Dernière réponse :
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Dernière intervention
19 septembre 2007
- 4 juin 2007 à 15:28
Bonjour tout le monde,

J'ai crée une base de données access au début,elle était non sécurisée et j'arrivais à avoir accés par  le biais de vb6:

Public db As Database
Public rs As Recordset
Public sql As String
Set db = OpenDatabase("C:\Documents and Settings\Khadime\Mes documents\mabase0.mdb")

Maintenant, j'ai sécurisé la base de données avec des comptes d'utilisateur ( pour acceder à la base de données il faut un username et un password).Mon problème est maintenant de savoir comment, avec vb6, se connecter à la base de données sécurisée? Quelles instructions me permettraients soit d'ouvrir directement un compte utilisateur , soit afficher la page d'authentification d'access.

Merci
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Dernière intervention
19 septembre 2007
4 juin 2007 à 15:28
3
Merci
Habitues toi a bien dire ce qui ne fonctionne pas quand c'est le cas. Pour utiliser ADO, il faut aller dans Projet -> Référence et cocher Microsoft Active Data Object 2.8.

Bon si tu insistes pour DAO (pas de soucis, on va trouver).

Deja, j'ai l'impression que maintenant tu crées ton fichier par code, non ? ton code est différent, pourquoi ?
Si tu veux plus de renseignements sur les fichiers Sécurité, regardes ca (c'est ce que j'ai suivi)

http://www.ybet.be/access/15-securite.htm#password-access

On verra ensuite.

PS: pour ton erreur, soit tu n'as pas créer de fichier sécurité, soit tu t'es trompé de chemin, soit tu n'es pas inclue dans ton groupe de travail.

Merci cs_Nicko11 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de cs_Nicko11
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Dernière intervention
19 septembre 2007
4 juin 2007 à 08:13
0
Merci
Salut,

je vois de quoi tu parles mais le pb c'est que je sais le faire en ADO mais DAO, je sais pas si c'est pareil.

Regarde dans l'aide la méthode que tu utilises:

Setdatabase = workspace .OpenDatabase ( dbname,options,read-only,connect)

Tu peux voir qu'il n'y a pas qu'un seul argument pour cette méthode. Donc, il faut que tu cherches les arguments correspondants a ce que tu recherches.

Au pif, je dirais un truc du genre
"UID Nom_utilisateur; PWD Password_Utilisateur"

Sinon, regardes les sources de ce site et vois s'il n'y en a pas qui t'aiderait.

A+
Commenter la réponse de cs_Nicko11
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Dernière intervention
19 septembre 2007
4 juin 2007 à 08:17
0
Merci
La connexion à une base sécurisée en ADO est la suivante :

Set acn = New ADODB.connection
Set rs = New ADODB.recordset

acn.Open "Provider=Microsoft.Jet.OLEDB.4.0;User ID= Nom_utilisateur ;Password = Password_Utilisateur;Data Source= " & Chemin_DataSource & ";Jet OLEDB:System database =" & Chemin_System_DataBase

Tu dois adapter.
 
PS :le dernier argument represente le chemin du fichier Sécurité que Access a du te créer.
 
Commenter la réponse de cs_Nicko11
Messages postés
39
Date d'inscription
dimanche 28 novembre 2004
Dernière intervention
4 juin 2007
4 juin 2007 à 11:14
0
Merci
J'ai essayé la methode ADO mais ça marche pas, je maitrise pas trop. Peux tu mettre plus de commentaires stp!     
Commenter la réponse de kg_online
Messages postés
39
Date d'inscription
dimanche 28 novembre 2004
Dernière intervention
4 juin 2007
4 juin 2007 à 11:15
0
Merci
J'ai la procedure en DAO mais un petit problème bloque tout.
La procédure :

      Dim MyWorkspace As Workspace
      Dim SecuredDB As String
      Dim slUserName As String
      Dim slPassword As String
      Dim db As Database
      Dim rs As Recordset      'Définit l'emplacement de la base de données système
      DBEngine.SystemDB = App.Path & "\Sécurisé.mdw"
      'Crée un objet Espace de travail
      slUserName = Text1.Text
      slPassword = Text2.Text
      Set MyWorkspace = DBEngine.CreateWorkspace("New", slUserName, slPassword)

      'Ouvre la base de données
      SecuredDB = App.Path & "\lrobase0.mdb"
     
      Set db = DBEngine.Workspaces("New").OpenDatabase(SecuredDB)

      Set rs = db.OpenRecordset("Name", dbOpenDynaset)
      rs.MoveFirst
      Label3.Caption = _
                 "The first record is " & rs.Fields("LastName").Value

      'Ferme les jeux d'enregistrements et la base de données
      rs.Close

 L'erreur c'est :

Impossible de lancer votre application. Le fichier d'informations du groupe de travail est manquant ou ouvert en mode exclusif par un autre utilisateur. (Erreur 3028)
Commenter la réponse de kg_online

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.