freeman151248
Messages postés16Date d'inscriptionvendredi 19 mai 2006StatutMembreDernière intervention31 mars 2011
-
23 févr. 2011 à 10:01
4u4me4us
Messages postés780Date d'inscriptionlundi 22 janvier 2007StatutMembreDernière intervention30 octobre 2013
-
28 févr. 2011 à 14:11
Bonjour,
Je voudrais pouvoir creer un fichier log pour savoir qui s'est connecté à une base de donnée.
La base est interfacée avec une application VB6 qui lit les données de la base. j'arrive à savoir qui s'est connecté si la personne ouvre la base avec l'application ACCESS(utilisation d'une macro autoexe et executecode) mais cela ne marche pas lorsque qu'elle se connecte via l'application VB6. Voici le code de connexion à la base dans l'application VB6 :
With Adodc1
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & BdApplication.Fichier & ";Persist Security Info=False" & ";Jet OLEDB:Database Password=" & BdApplication.Password
.RecordSource = BdApplication.TableToConnect
.Refresh
.Recordset.MoveFirst
End With
freeman151248
Messages postés16Date d'inscriptionvendredi 19 mai 2006StatutMembreDernière intervention31 mars 2011 23 févr. 2011 à 17:37
merci pour la réponse.
par contre c pas exactement ce que je souhaite faire.
Car créé un log d'accés à la base ACCESS a partir de l'application VB je le fait déja mais sans passer par une macro dans ACCESS-> j'écris dans un fichier texte à chaque ouverture de l'application car connexion automatique à la base.
en gros je voulais que ca soit l'appelé (la base) et non l'appelant (l'application VB) qui gére l'écriture du log. EN effet, cette base est susceptible d'etre connectée à une autre application dont je ne métriserai pas le code mais je souhaiterai tout de même connaitre l'historique des connexions.
ce que je ne comprends pas vraiment c'est que la connexion n'est pas équivalente à l'ouverture de la base et donc la macro autoexe ne se lance pas.
n'y a t'il pas possibilité de lancer du code à la connexion? ou une autre idée?
4u4me4us
Messages postés780Date d'inscriptionlundi 22 janvier 2007StatutMembreDernière intervention30 octobre 20133 24 févr. 2011 à 10:43
Dans ce cas il faut lire le fichier .ldb qui est générer à chaques connexions. Que l'ouverture soit par code ou double clique.
le fichier.ldb à le même nom que le fichier .mdb. exemple madb.mdb quand je l'ouvrirais par code ou double cliques va automatiquement créer le fichier madb.ldb.
Le fichier .ldb et lisible par notpad mais parfois sans que je sache pour quoi elle est crypté.
4u4me4us
Messages postés780Date d'inscriptionlundi 22 janvier 2007StatutMembreDernière intervention30 octobre 20133 24 févr. 2011 à 11:04
"comment intercepter sa création". Comme tu connais le path et le nom de la db il faut que tu fasse un code qui toutes le x min/sec teste sir madb.ldb existe.
freeman151248
Messages postés16Date d'inscriptionvendredi 19 mai 2006StatutMembreDernière intervention31 mars 2011 28 févr. 2011 à 14:03
non, le sujet est toujours en suspend. l'idée de faire un scan tous les x secondes ne me satisfait pas trop même si a priori y en a pas d'autre. peut-etre avec une autre manière d'ouvrir la base ? mais cette question était surtout pour ma culture perso et non indispensable donc je n'irais pas plus loin dans mes investigations.