Link to home
Start Free TrialLog in
Avatar of Williams225
Williams225

asked on

MS Access : Is it possible to know who locked a file?

Hello Expert,


We use citrix to deploy MS Access for our user. And an access file in a shared drive has been locked for a few days. For security purpose we are trying to see who locked the file. 


Is it possible to find that info???

Avatar of Daniel Pineault
Daniel Pineault

Take a look at https://www.devhut.net/ms-access-who-is-logged-in/ it answers this questions and provides links and possible solutions.
And an access file in a shared drive has been locked for a few days.
What does this mean exactly?

Your application is split into frontend and backend?
Your users have their own (local) copy of the frontend on Citrix?

<<And an access file in a shared drive has been locked for a few days. For security purpose we are trying to see who locked the file.>>

Chances are it's not locked deliberately, but there was some kind of abnormal disconnect.

You won't be able to do it through the LDB file.  All users will be shown as "admin", and on a RDS server, the station name is not going to help either.

You'll have to use Process explorer:

https://learn.microsoft.com/en-us/sysinternals/downloads/process-explorer

 and look for the file handle, then determine the user process that is holding the lock.

Jim.
ASKER CERTIFIED SOLUTION
Avatar of Dale Fye
Dale Fye
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
We used to use a utility called LDBView, this was on older databases created in earlier versions of Access, but I think it still works:
https://flylib.com/books/en/4.450.1.56/1/

If there was a need to urgently update the central backend database, and a user’s front end was causing a lock on the database, this helped track down the locks but as mentioned above, sometimes the username was generic like admin, and in a VDI environment, you couldn’t easily associate the machine accessing the file to an actual user, it would just list a generic server.

I have noticed in VDI environments, even though users claim to have closed the file, the file locks are incredibly unpredictable at releasing. We use the Windows computer management app within control panel, sort the ‘open files’ listing for the server under ‘shared folders’' to find the database, check who has it locked, and force closure and release the locks that way in emergencies. On the advice of others, we only encourage updates to access databases on high-speed reliable wired/LAN connections, over VPN, wireless, slow links etc, there was instances of database corruption, slow releasing file locks. This was for all office file types, not just Access databases.
Alas, LDBView.exe (the one from Microsoft that shows you the file locks) does not work any more, nor DBLock.exe.   Neither was updated for JET 4.0 or ACE.     You have to use Process Explorer now to see the locks.

If the user is coming over the network to get to a FE/BE, you can look at open files in the server OS and disconnect them without rebooting the server, but if they are local, which is the case usually with RDS/Citrix setups, you are stuck with Process Explorer.

Jim.