У меня есть веб-сайт, который использует AjaxControlToolkit.dll и Log4Net.dll.
Когда я пытаюсь выполнить производительность профильный инструмент в VS 2010 на нем, это дает мне соблюдающее предупреждение:
AjaxControlToolkit.dll подписывается, и оснащение его будет делать недействительным свою подпись. Если Вы продолжаете без постинструментального события оставлять двоичный файл, он не может загрузиться правильно.
Теперь, если я выбираю опцию продолжиться без отставки, профилирование запускается, но блок не загружает и дает исключение ASP.NET.
Профилировщик, вероятно, изменяет сборку и потому, что она была ранее подписана. По-видимому, вам нужно добавить действие после инструмента, которое повторно подписывает сборка.
Это может быть проблемой, потому что у вас нет файла sn, который использовался для подписи 3-го p художественные сборки.
Ответ описан здесь . Вы должны использовать пост-инструментальное событие для каждой подписанной сборки.
Мне не удалось заставить его работать «как есть» с моей установкой VS 2010. Мне пришлось вызывать эту командную строку как событие после сборки для каждой dll:
"C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" & sn -Ra [pathOfDll] [pathOfSNK]
Обратите внимание, что [pathOfDll] находится в каталоге obj \ Debug , связанном с проектом.
гусс связан с блогом сообщение, дающее ответ . Ответ описан там. Как он указывает, вы должны использовать пост-инструментальное событие для каждой подписанной сборки.
Проще всего вызвать sn.exe
напрямую:
"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\sn.exe" -R [pathOfDll] [pathOfSNK]
Обратите внимание, что [pathOfDll]
находится в каталоге obj \ Debug , связанном с проектом. .