I am developing an application in C# (.NET), and am having trouble dealing with file locking.
- My main application (A) needs read/write access to a certain file.
- A separate application (B) needs read access to the same file.
- I need to prevent the user from editing or deleting the file while my application (A) is running. The application (A) is long-running. The file must not be deleted while (A) is running, even when it is not actively being read from or written to.
I have full control of the source of (A) and (B), so I can modify either of them.
How can I stop a user from modifying/deleting a file while application (A) is running, while allowing application (A) to read/write, and application (B) to read?