>I'd like to see some comments about this approach: A) Is it technically feasible to do reasonably and, B), does this sound like a solid model for deploying and marketing software?
Especially since each site has a DSL connection, you should be able to have the app make a simple request to the web server at startup, and have the webserver send back a rolling code that the client app would need to keep running.
The server can keep a simple databases of Client IP addresses (DSL lines should have a static IP address), and only send a valid code for recognized and paid-up addresses.
You'll have to keep in mind that the well-being of the web server and internet connection will impact the usability of the app. I've seen other apps simply keep track of how long it's been since they've been validated, and they won't run if contact with the server hasn't been made in say, 15 days.
Erik Moore
Clientelligence