Forgive this question if it's too 'newbie' or green - I'm not a professional developer or anything. I'm a hobbyist coder.
I'm developing a windows desktop application which requires the following features:
- The app can be downloaded to any number of client machines on a home network (on the LAN).
- All clients will access a shared database file (using LiteDb) which is accessible to all clients across the network.
- The licencing system will be online verification of a licence key and storage of such verification alongside any expiry dates in the registry (or equivalent). Thus, each client will also need to be able to access a shared registry space.
- Each client app will also need to access other shared files (such as shared assets - pictures/videos etc).
- Each client app will also have local files specific to that particular installation (e.g. themes for the client app).
My question is what is the best way to achieve this? I am scoping out my options at present. I don't want the end user having to do any set-up to enable this, such as setting up mapped network drives etc. It should all be achievable within the code itself and using Windows features.
I briefly explored Appdata.roaming - Weirdly, the same appdata.roaming folder on two lan machines for the same user had different files in - thought they were meant to be the same? Had considered this as a storage space for the shared files.
The most preferable scenario would be this being applicable for different users across the network. E.g. Windows User A has it installed on Client 1 and Windows User B on Client 2 - they can each access the same database/files/registered app. However, it would be possible to limit this to apps being used by the same windows user account if this would provide the most optimal of solutions.
Lastly, as likely goes without saying, the most optimised route is preferable - mainly being access times to the database and asset files (images/videos etc).
Don't ask for much, do I!? Hope someone more experienced and knowledgeable that I can help!