Настройка useLegacyV2RuntimeActivationPolicy для тестовых проектов в VS 2010 - PullRequest
4 голосов
/ 18 февраля 2010

В .NET 4 для загрузки сборок смешанного режима .NET 2 требуется установить useLegacyV2RuntimeActivationPolicy="true" в элементе запуска файла app.config для проекта приложения.

Как я могу установить это (и необходимо ли это) для тестового проекта?Я получаю очень странное поведение на хосте тестирования, но только для тестов, которые напрямую используют сборки смешанного режима CLR 2, поэтому я подозреваю, что это может быть причиной ...

Фактическая полученная ошибка:

Тестовый адаптер «UnitTestAdapter» выдал исключение при выполнении теста «MyTest».Исключение было брошено целью вызова.Попытка чтения или записи защищенной памяти.Это часто указывает на то, что другая память повреждена.

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

1 Ответ

2 голосов
/ 18 февраля 2010

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

В то же время вы можете обойти это, установив опцию в приложении QTAgent32. Это процесс, который фактически используется для запуска модульных тестов, и он расположен на

C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ QTAgent32.exe

Да, чрезвычайно хакерское решение, но, надеюсь, оно разблокирует вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...