Как создать новый guid для каждого установленного экземпляра? - PullRequest
4 голосов
/ 03 января 2012

Я использую C #. Можно ли сделать так, чтобы каждый установленный экземпляр имел разный guid?

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

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 03 января 2012

Почему бы просто не проверить файл при запуске?Затем вы можете сгенерировать UID и вставить его в файл.Таким образом, в следующий раз при загрузке приложения вы сможете прочитать UID из файла?

Это может быть либо для каждого пользователя (где вы поместите файл в их пользовательский каталог), либо для установки (где файл находится рядом с исполняемым файлом или где-то за пределами текущего пользовательского каталога, простоследите за разрешениями файлов Windows!).

0 голосов
/ 04 января 2012

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

Вместо этого вы должны смотреть на конфигурацию машины и генерировать из нее уникальный идентификатор, а не генерировать случайный идентификатор,Например, вы могли бы взять машины MAC-адрес в качестве отправной точки.

Это сделало бы машины уникальным идентификатором детерминированным , то есть вам не нужно хранитьгде угодно, вы можете генерировать его каждый раз, когда вам это нужно:)

Ранние версии спецификации GUID (версия 1) фактически использовали MAC-адрес машины как часть GUID - однако это приводило к проблемам безопасности и былопричина вируса Мелисса .Современная спецификация GUID не использует данные MAC-адреса.

...