Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lecture du fichier LDB

1 réponse
Avatar
Chris
Bonjour,

J'aimerais connaitre l'ensemble des utilisateurs=20
connect=E9s sur ma base. Je sais lire le fichier ldb par=20
une petite fonction. Le probl=E8me est que lorsque le user=20
quitte l'appli, ce fichier ldb ne se met pas =E0 jour ce=20
qui fait que m=EAme lorsqu'il a quitt=E9 l'appli, je le vois=20
toujours dans le fichier ldb. J'ai t=E9l=E9charg=E9 le LDB=20
Viewer de microsoft, lui d=E9tecte cela correctement. Il=20
sait que cet utilisateur s'est connect=E9 mais qu'il n'est=20
plus actif sur la base de donn=E9es.
Quelqu'un pourrait-il m'aiguiller pour avoir une fonction=20
qui me permet de retourner r=E9ellement les users en cours=20
d'utilisation sur ma base?

PS : voici la fonction que j'utilise

Function fListUsers(Optional strPath) As String

Dim strLine As String * 64
Dim i As Integer
Dim F As Integer
=20
If IsMissing(strPath) Then: strPath =3D CurrentDb.Name
=20
strPath =3D Left(strPath, Len(strPath) - 3) & "ldb"
'strPath =3D Left(strPath, InStrRev(strPath, ".", -1))=20
& "ldb"
=20
If Dir(strPath) <> "" Then
F =3D FreeFile
Open strPath For Random Access Read Shared As #F=20
Len =3D Len(strLine)
For i =3D 1 To LOF(F) / Len(strLine)
Get #F, i, strLine
fListUsers =3D IIf(fListUsers <> "", fListUsers=20
+ ";", "") _
& Left(strLine, InStr(1,=20
strLine, Chr$(0)) - 1)
Next i
Close #F
End If
End Function



Merci d'avance

1 réponse

Avatar
Benoit Compoint [MS]
Bonjour,

L'utilitaire LDBVIEW.EXE que vous utilisez pour vos bases Access 97 était
inclus dans le fichier JETUTILS.EXE que vous avez probablement téléchargé
sur le Web.

Le fichier JETUTILS.EXE contient un autre fichier : Msldbusr.exe.
Le fichier Msldbusr.exe est un fichier auto-extractible qui contient le
fichier Msldbusr.dll.
Vous pouvez utiliser le fichier Msldbusr.dll pour définir une fonction
GetUsers comme l'explique l'article 186304 de la base de connaissances
Microsoft :
http://support.microsoft.com/default.aspx?scid=KB;EN-US;186304

Benoît Compoint

"Chris" wrote in message
news:086001c3d445$5002ab50$
Bonjour,

J'aimerais connaitre l'ensemble des utilisateurs
connectés sur ma base. Je sais lire le fichier ldb par
une petite fonction. Le problème est que lorsque le user
quitte l'appli, ce fichier ldb ne se met pas à jour ce
qui fait que même lorsqu'il a quitté l'appli, je le vois
toujours dans le fichier ldb. J'ai téléchargé le LDB
Viewer de microsoft, lui détecte cela correctement. Il
sait que cet utilisateur s'est connecté mais qu'il n'est
plus actif sur la base de données.
Quelqu'un pourrait-il m'aiguiller pour avoir une fonction
qui me permet de retourner réellement les users en cours
d'utilisation sur ma base?

PS : voici la fonction que j'utilise

Function fListUsers(Optional strPath) As String

Dim strLine As String * 64
Dim i As Integer
Dim F As Integer

If IsMissing(strPath) Then: strPath = CurrentDb.Name

strPath = Left(strPath, Len(strPath) - 3) & "ldb"
'strPath = Left(strPath, InStrRev(strPath, ".", -1))
& "ldb"

If Dir(strPath) <> "" Then
F = FreeFile
Open strPath For Random Access Read Shared As #F
Len = Len(strLine)
For i = 1 To LOF(F) / Len(strLine)
Get #F, i, strLine
fListUsers = IIf(fListUsers <> "", fListUsers
+ ";", "") _
& Left(strLine, InStr(1,
strLine, Chr$(0)) - 1)
Next i
Close #F
End If
End Function



Merci d'avance