We're deploying .NET WPF app to beta-testers using ClickOnce. We want to set a expiration date after which the app doesn't open anymore. Fixed date or x days from the first installation are both ok. After the trial we ask the users to unistall the app from their computers. In case they don't do so, we want that the app doesn't open anymore.
Specific requirements:
- no possibility to reset the time by re-installing or any other manner
- the app should work also offline, without internet access, so checking the web server every time the app is run is not a best solution
- subsequent updates to app don't affect the expiration date
- we would like to be able to extend the trial period any time for any period by sending a new activation code or similar to user
I'm looking if there is some readymade solutions out for this (pretty common) thing, at least some basic mechanism to start working on.