Удаленный рабочий стол Уникальный Guid
Я пишу заявку на лицензирование, относящуюся к нашему продукту. Это не очень подробно и тщательно, но это будет работать для нашего бизнеса.
Лицензия связывает аппаратное обеспечение (3 части, которые я получаю в.net) с идентификатором рабочей станции, который передается как опция при выполнении программы. Итак, рабочая станция с идентификатором XXX авторизована для запуска на компьютере YYYYY.
Единственная лазейка, которую я видел в этом, состоит в том, что они могут запускать приложение несколько раз по RDP, когда им разрешено запускаться только один раз. Как правило они
Как я могу назначить лицензию, чтобы они не запускали приложение из разных сеансов несколько раз, когда они лицензируются по меньшим ценам?
Поскольку это выполняется в одноранговых сетях, в большинстве случаев я не могу полагаться на проверку диспетчера задач, чтобы увидеть, что работает во время запуска программы.
У кого-нибудь есть какие-либо предложения о том, что я могу отслеживать по соединению RDP, чтобы привязать лицензию?
Спасибо!
1 ответ
Если я правильно понимаю вашу цель, вы хотите запретить им запускать приложение чаще, чем лицензировано... и вы пишете, что вы уже решили это, за исключением ситуации, когда приложение работает на одном компьютере в разные сеансы...
Если это так, то вам нужен только механизм для предотвращения запуска приложения во второй раз на том же компьютере (даже в другом сеансе)... вы можете использовать глобальный Mutex для достижения этого... см. http://msdn.microsoft.com/en-us/library/system.threading.mutex.aspx
В основном вы создаете названный Mutex с Global\
в качестве префикса имени... если этот Mutex уже существует, приложение уже запущено на этом компьютере (в том же или другом сеансе)... если вы хотите только запретить его повторное выполнение в том же сеансе ты используешь Local\
в качестве префикса...