Что приводит к сбою Visual Studio 2008 с пакетом обновления 1 (SP1) при переключении в режим конструктора приложения WPF

После разработки приложения WPF без Source Control я решил добавить решение в TFS.

После этого всякий раз, когда я открывал основной файл window.xaml в Design View, Visual Studio исчезал, и в журнале событий приложений регистрировалось следующее событие:

.NET Runtime версия 2.0.50727.3053 - Неустранимая ошибка механизма выполнения (7A035E00) (80131506)

Для получения дополнительной информации см. Центр справки и поддержки по адресу http://go.microsoft.com/fwlink/events.asp.

8 ответов

Решение

Та же проблема, но без установленных команд питания. Единственный обходной путь, который я смог последовательно использовать, - это очистить / перестроить решение перед открытием ЛЮБОГО файла xaml. Если вы не можете войти в свое решение из-за загрузки XAML при запуске, удалите suo.

Проблема была вызвана надстройкой Visual Studio с именем "Команды питания для Visual Studio 2008".

После их удаления и перезапуска Visual Studio представление конструктора для файлов xaml стало работать нормально.

Если вы хотите оставить установленные Power Commands для Visual Studio 2008, посмотрите этот обходной путь здесь:

PowerCommands сбой VS2008 SP1

Но в основном:

Обходной путь, который представляет собой простую модификацию файла devenv.exe.config.

Это будет существовать в (64-разрядных системах) C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE

Или (32-разрядные системы) C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE

Добавьте этот XML-токен в список зависимых сборок. Они попросили меня добавить его после служебного, но я не уверен, имеет ли это значение.

<dependentAssembly>
  <assemblyIdentity name="office" publicKeyToken="71e9bce111e9429c" culture="neutral"/>
  <codeBase version="12.0.0.0" href="PrivateAssemblies\Office12\Office.dll"/>
</dependentAssembly>

<!-NEW STUFF-->
<dependentAssembly>
  <assemblyIdentity name="Microsoft.PowerCommands" publicKeyToken="null" culture="neutral"/>

  <!-- For 64-bit systems, uncomment this one
  <codeBase version="1.1.0.0" href="C:\Program Files (x86)\PowerCommands\Microsoft.PowerCommands.dll"/> -->

  <!-- For 32-bit systems, uncomment this one
  <codeBase version="1.1.0.0" href="href="C:\Program Files\PowerCommands\Microsoft.PowerCommands.dll"/> -->

</dependentAssembly>

Это хорошо сработало для меня.

Я только что наткнулся на ответ, который работал в моей ситуации. Использование утилиты ngen для удаления собственного кэша изображений устранило проблему. Я не знаю, какое именно изображение это было, поскольку я не проходил по одному, но это работало, и я смог сохранить PowerCommands!

Команда:

ngen /delete *

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

У меня не было установлено PowerCommands, но была та же проблема. Запуск в безопасном режиме и удаление любых экзотических вкладок на панели инструментов решили проблему (вы можете запустить в обычном режиме впоследствии). Это одна из многих возможных причин этой ошибки, как вам покажет Google.

У меня была эта проблема довольно давно. Я никогда не устанавливал Power Commands, удаление файлов.suo и очистка / восстановление не помогли. Для меня было исправлено отключение автопополнения панели инструментов. Просто зайдите в Инструменты | Варианты | Windows Form Designer, то в нижней части окна есть AutoToolboxPopulate, для которого я установил значение false. Затем я перезагрузил решение в VS2008 и смог открыть файлы WPF в режиме Xaml или в режиме конструктора.

Я испытывал такие сбои. Убедитесь, что ваш код содержит класс редактируемого вами xaml (по умолчанию)

Microsoft предлагает исправление: Microsoft Connect. Я нашел эту ссылку в этом блоге.

Это исправление решило проблему после перезагрузки для меня.

Другие вопросы по тегам