2009-12-04 1 views
3

С помощью MSDN, это говорит -VR вариант:как использовать Sn.exe -VR

Registers assembly for verification skipping.

Мой вопрос, когда -VR используется, он будет только изменить файл сборки или он также изменит системный реестр. Это имеет значение, следует ли мне выдавать эту команду на машине разработки или на конечной развернутой машине.

ответ

6

sn -Vr создает запись в реестре на локальном компьютере. Он не изменяет сборку. Вы должны запустить sn -Vr локально на каждом компьютере, на котором вы хотите пропустить проверку сильного имени целевой сборки.

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

+0

Привет, Николь, знаете ли вы разницу между аргументом userlist и без аргумента userlist? –

+1

Если вы не укажете список пользователей, запись пропущенного подтверждения будет добавлена ​​в HKLM \ SOFTWARE \ Microsoft \ StrongName \ Verification. Если вы укажете список пользователей, запись пропусков проверки будет по-прежнему добавляться под одним и тем же ключом, но она будет иметь дополнительное значение UserList, которое указывает пользователя (пользователей), к которому применяется пропуск проверки. Когда среда выполнения .NET проверяет подпись сборки, она должна учитывать применение пропусков проверки пропусков для пользователей в UserList для любой данной записи пропуска в реестре, если присутствует список пользователей. –

-1

Ни один. Не следует пропустить проверку версии развертывания.

+0

На самом деле это не система развертывания, это моя тестовая система. Пожалуйста, предложите. Если я запускаю -Vr в тестовой системе, значит ли это, что подпись не будет проверена в тестовой системе вообще? –

+0

Вам нужно будет добавить контрольный скипист на машину, на которой вы собираетесь протестировать. –

+0

Если я запускаю только «sn -Vr a.dll», является ли файл a.dll в машине, на которой выполняется команда tht? –