Удаленный рабочий стол Уникальный Guid - PullRequest
0 голосов
/ 18 октября 2011

Я пишу заявку на лицензирование, относящуюся к нашей продукции. Это не очень подробно и тщательно, но это будет работать для нашего бизнеса.

Лицензия связывает аппаратное обеспечение (3 части, которые я получаю в .net) с идентификатором рабочей станции, который передается как опция при выполнении программы. Итак, рабочая станция с идентификатором XXX авторизована для работы на компьютере ГГГГ.

Единственная лазейка, которую я видел в ней, заключается в том, что они могут запускать приложение несколько раз по RDP, когда им разрешено запускаться только один раз. Обычно они

Как я могу назначить лицензию, чтобы они не запускали приложение из разных сеансов несколько раз, когда они лицензируются по меньшим ценам?

Поскольку это выполняется в одноранговых сетях, в большинстве случаев я не могу полагаться на проверку диспетчера задач, чтобы увидеть, что работает во время запуска программы.

У кого-нибудь есть предложения о том, что я могу отслеживать по соединению RDP для привязки лицензии?

Спасибо!

1 Ответ

2 голосов
/ 18 октября 2011

Если я правильно понимаю вашу цель, вы хотите запретить им запускать приложение чаще, чем лицензировано ... и вы пишете, что вы уже решили это, за исключением ситуации, когда приложение работает на одном компьютере в разных сеансах ...

ЕСЛИ так, тогда вам нужен только механизм для предотвращения повторного запуска приложения на одном компьютере (даже в другом сеансе) ... вы можете использовать глобальный Mutex для достижения этого ... см. http://msdn.microsoft.com/en-us/library/system.threading.mutex.aspx

По сути вы создаете именованный Mutex с Global\ в качестве префикса имени ... если этот Mutex уже существует, то приложение уже запущено на этом компьютере (в том же или другом сеансе)... если вы хотите только предотвратить повторный запуск в том же сеансе, который вы используете Local\ в качестве префикса ...

...