Ошибка: не удалось загрузить файл или сборку Microsoft.AnalysisServices.AdomdClientUI - PullRequest
0 голосов
/ 10 мая 2018

Я новичок в аналитических службах. Когда я пытаюсь выполнить пакет ssis в командной строке с помощью команды dtexec, я получаю сообщение об ошибке:

Не удалось загрузить файл или сборку Microsoft.AnalysisServices.AdomdClientUI.dll Версия 13.0.0.0

Я пробовал несколько решений, которые я нашел в Интернете, но они не работали.

Спасибо за совет.

Ответы [ 3 ]

0 голосов
/ 11 мая 2018

SQL_AS_ADOMD.msi включает Microsoft.AnalysisServices.AdomdClient.dll, но не Microsoft.AnalysisServices.AdmomdClientUI.dll.

Microsoft.AnalysisServices.AdmomdClientUI.dll включен в SQL Management Studio, но версия 13.0.1700.441, которая у меня возникла как сбой при замене, не удалась из-за вызова нового метода, и я не смог найти соответствующий SQL 2016 Версия SP2. Предположительно, сейчас ожидается исправление от Microsoft.

0 голосов
/ 24 мая 2018

Изменить 20180604: Накопительное обновление 1 для SQL Server 2016 с пакетом обновления 2 устраняет проблему.

Ответ до 20180604: есть обходной путь для этой ошибки, опубликовано здесь :

Есть ошибка, вероятно, она будет исправлена ​​в SP2 CU1, который я сказанное будет выпущено в конце месяца. Мы получили предложение обходного пути от MS, но этого было недостаточно.

Вкратце: предоставленный обходной путь не работает как есть, но я выяснил что еще сделать, теперь он работает на сервере с SP2

Больше: предоставленный обходной путь не работает как есть, потому что он работает зарегистрировать правильную сборку и правильную версию (v14), но когда пакет запущен, он все равно будет искать предыдущую версию v13. я проверил, и это так, даже если у меня есть SP2 на моем ноутбуке, перестроить все в проекте SSIS и развернуть - это все еще будет v13, который это поиск. Не помогает регистрация v13 сборки, т.к. эта версия не имеет метода, который вызывается, так что просто привести к другим сообщениям об ошибках.

Разрешение, которое я сделал на сервере, заключается в том, чтобы включить перенаправление привязки .NET machine.config, так что v14 используется, хотя v13 ищется для.

Шаг за шагом, я бегал с повышенного CMD:

1: Зарегистрировать сборку: "C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1 Tools \ x64 \ gacutil.exe" / i "C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ PrivateAssemblies \ Microsoft.AnalysisServices.AdomdClientUI.dll "

Вы должны получить сообщение, что одна сборка успешно зарегистрирована в GAC.

2: (необязательно) Подтвердить регистрацию:

"C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1 Tools \ x64 \ gacutil.exe" / l Microsoft.AnalysisServices.AdomdClientUI

Вы должны увидеть сообщение, что это зарегистрированная версия 14.0.0.0

3: Настройка перенаправления версии в machine.config (будьте осторожны, когда редактирование !!)

Файл для редактирования: "C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Config \ machine.config"

Элемент для добавления контента

Конфигурация / выполнение

На сервере, на котором я его исправил, этот элемент был полностью пустым, т.е.

<runtime/>

Если он не пустой, конечно, оставьте то, что находится в элементе, и добавьте Элемент AssemblyBinding, показанный ниже.

Измените / добавьте, чтобы вместо этого весь элемент содержал:

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="Microsoft.AnalysisServices.AdomdClientUI"
                        publicKeyToken="89845dcd8080cc91"
                        culture="neutral"/>
      <bindingRedirect oldVersion="13.0.0.0"
                       newVersion="14.0.0.0" />
    </dependentAssembly>
  </assemblyBinding>
</runtime>

5: сохранить файл. Теперь пакет должен работать.

Когда установлено исправление в CU1, необходимо выполнить следующие шаги:

1: удалите добавленный выше элемент AssemblyBinding и сохраните файл

2: Удалите dll, который был добавлен в GAC: «C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1 Tools \ x64 \ gacutil.exe» / u Microsoft.AnalysisServices.AdomdClientUI

На моем сервере «C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ PrivateAssemblies \ Microsoft.AnalysisServices.AdomdClientUI.dll» была версии 13, поэтому на шаге 1 регистрировалась версия 13 (вы Вы можете проверить версию, щелкнув правой кнопкой мыши / Свойства и затем нажав на вкладку Сведения).

Чтобы решить эту проблему, я:

  1. Незарегистрированный v13 с "C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1 Tools \ x64 \ gacutil.exe" / u Microsoft.AnalysisServices.AdomdClientUI
  2. Скопировал v14 с компьютера с установленной VS в "C: \ Program Files \"
  3. На шаге 1 я выполнил «C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1 Tools \ x64 \ gacutil.exe» / i »C: \ Program Files \ Microsoft.AnalysisServices.AdomdClientUI.dll "

Шаги, когда прибыло исправление, остаются теми же (с добавлением удаления "C: \ Program Files \ Microsoft.AnalysisServices.AdomdClientUI.dll").

Примечание: если вы запускаете ваши пакеты в 32-битной, а не в 64-битной версии, файл machine.config, который необходимо отредактировать, находится в каталоге c: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \Config \ machine.config

0 голосов
/ 10 мая 2018

Вы можете получить Microsoft.AnalysisServices.AdomdClientUI.dll из компонента Пакет дополнительных компонентов MS SQL Server SQL_AS_ADOMD.msi .

Предположительно у вас есть SQL Server 2016, поэтому вы можете получить его из SQL 2016 Feature Pack .

...