I want to read exclusive-opened files on Windows on a user-specified volume.
The established way to do this is to take a VSS snapshot.
Taking a VSS snapshot generally requires administrative permissions, so my application is split into an unelevated component and a SYSTEM service. Right now, the SYSTEM service initiates the snapshot and reads its files.
So far so good - as long as the files are accessible by both the SYSTEM user and the unelevated regular user. But of course, this is different user can have different mount paths, different network shares, different file authentication, and possibly even different Bitlocker access. My approach stops working as soon as a mounted network path is selected.
How can i take a VSS snapshot, having access to all the unelevated user's file paths?