Ласкаво просимо до dev.net.ua Увійти | Приєднатися | Допомога
.NET 3.0 Installation Error

Несколько дней назад писал, что никак не мог поставить VS 2008 на машину с XP SP2.

Как оказалось позже даже переустановка .NET 3.0 обрывалась на середине и ничем не могу побороть. Как известно, большинство советов в сети предлагают сносить какие-то бета компоненты и все что может сопутствоваьт ...

В этом порыве и был наполовин искоренен .NET с моей машины, но толку было мало ...

Полностью удалить не решался т.к. долго переустанавливать и потому решил вчитываться в логи. Они бали лаконичны как спартанцы:

[11/26/07,16:08:31] Windows Communication Foundation: [2] Error: Installation failed for component Windows Communication Foundation. MSI returned error code 1603

Но все же ошибка есть и значит где-то должна быть описанна.

Нашлась в 2х метх.  Логи типа dd_wcf_ret*.txt - логи установки WCF и в EventLog.

Ошибка была следующая:

ServiceModelReg [16:08:29:122]: Uninstalling: Machine.config Section Groups and Handlers
ServiceModelReg [16:08:29:170]: System.IO.FileLoadException: Could not load file or assembly 'System.ServiceModel, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'System.ServiceModel, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
   at System.Configuration.TypeUtil.GetTypeWithReflectionPermission(IInternalConfigHost host, String typeString, Boolean throwOnError)
   at ....

Тут уж я совсем припух. Насколько помню System.ServiceModel имеет версию 3.0 и входит в состав WCF, который еще и не стоит как бы ... Ну и зачем инсталлятор его ищет ...

А ищет он его потому что 2.0 версия у System.ServiceModel была ... раньше, в бетах ...  И именно такая версия "застряла" в machine.config!

Решением проблемы оказалось снести полностью

<sectionGroup name="system.serviceModel" type="System.ServiceModel.Configuration.ServiceModelSectionGroup, System.ServiceModel, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">

...

</sectionGroup>

Ну и само использование этой группы ниже в файле

  <system.serviceModel>
    <commonBehaviors>
      <endpointBehaviors />
      <serviceBehaviors />
    </commonBehaviors>
  </system.serviceModel>

Вот так и закончилась многодневная борьба с инсталлятором .NET.

Не понял почему так вышло с machine.config, но без ручного вмешательства точно не обойтись в такой ситуаци... =(

Posted: Monday, November 26, 2007 6:15 PM від demon_xxi

Коментарі

DmytroL сказав:

У меня точно такая же проблема была, но при установке VS 2008 Beta 2.

# November 27, 2007 7:09 AM
Анонімні коментарі деактивовані. Увійдіть або Зареєструйтесь щоб мати доступ до ресурсів Спільноти.