It seems to me that the only way you could do this is as follows:
1) Extend Active Directory and add a unique key for your application
2) Update that key anytime someone runs the application and logs in.
3) Refusea login if the field is marked as being logged into your application
4) Clear the field when either a) the application is closed (in the ClosingEvent) or b) at login if the timestamp in Active Directory exceeds some time frame (24 hours?). (This last one will clear out logins that never had a logoff because the system had a fatal event such as power failure)
5) You may also want a timer loop that will kill your application if it runs longer than some timeframe (18 hours?).