Не удалось загрузить DLL «xmogrt»: из запроса метаданных Tridion

Я пытаюсь использовать класс CustomMetaKeyCriteria для извлечения содержимого из БД брокера на основе некоторых метаданных, которые я настроил. Однако я получаю ошибку, указанную ниже. Любые идеи? Эта dll находится в моей папке bin, и я подтвердил, что это 32-битная версия, так как этот код работает на 32-битной машине. Я явно пропустил какую-то настройку, но что?

Не удалось загрузить DLL «xmogrt»: указанный модуль не найден. (Исключение из HRESULT: 0x8007007E)


person Mr Smith    schedule 17.12.2012    source источник
comment
Спасибо за вашу помощь. Я думаю, что в какой-то момент JAR-файл отсутствовал, но, похоже, вам нужно быть осторожным с тем, как API-интерфейс брокера реализован в решении VS.net.   -  person Mr Smith    schedule 19.12.2012


Ответы (2)


Проверьте, есть ли у вас остальные зависимости dll для этого файла?

В моей папке установки для x86 я вижу следующие библиотеки DLL:

  • MSVCP71.dll
  • MSVCR71.dll
  • netrtsn.dll
  • Tridion.ContentDelivery.Configuration.dll
  • Tridion.ContentDelivery.dll
  • Tridion.ContentDelivery.Interop.dll
  • xmogrt.dll

РЕДАКТИРОВАТЬ: И следующие банки Tridion:

  • cd_broker
  • cd_cache
  • cd_core
  • cd_datalayer
  • cd_deployer
  • cd_linking
  • cd_model
  • cd_tcdl (обычно не требуется)

Вам, вероятно, следует проверить cd_core_log для получения дополнительной информации, возможно, вам не хватает одного из сторонних jar-файлов.

person Nuno Linhares    schedule 17.12.2012
comment
все это есть. ошибка выше была, когда я запустил рассматриваемую функцию из модульного теста. Я запустил эту функцию из реального проекта и получил эту ошибку: Класс не найден, исключение: com.tridion.broker.querying.criteria.metadata.CustomMetaKeyCriteria. Может быть, я пропустил JAR? - person Mr Smith; 17.12.2012
comment
Как насчет Не удалось загрузить файл или сборку «MSVCP71» или одну из ее зависимостей. Ожидалось, что модуль будет содержать манифест сборки. сообщение? ошибка в том, что это плохой формат изображения, но я подтвердил, что использую 32-битную версию... - person Mr Smith; 18.12.2012
comment
Я предполагаю, что вы получаете сообщение об ошибке в веб-приложении ASP.Net. Это xmogrt.dll в папке bin этого приложения или в папке Tridion\bin? Он должен быть в бывшем! - person Quirijn; 18.12.2012
comment
где я могу найти готовые веб-приложения? - person Mr Smith; 18.12.2012
comment
Если у вас есть установщики для Tridion UI 2012, загляните в: Tridion UI 2012\Content Delivery\roles\web\dotNET. - person Nuno Linhares; 18.12.2012
comment
Я отследил файлы, перечисленные Nuno, скопировал их в свое приложение и все равно получаю ошибку «MSVCP71». - person Mr Smith; 18.12.2012
comment
Вы знаете, проект, о котором идет речь, действительно работал до недавнего времени, что могло произойти? Я собираюсь отправить заметку в службу поддержки SDL - person Mr Smith; 18.12.2012
comment
Возможно, вам понадобится дополнительная информация, чтобы служба поддержки могла вам помочь. Если мы не можем понять это здесь... В любом случае, это действительно больше для поддержки, чем SO - person Nuno Linhares; 18.12.2012
comment
Хорошо, я понял шаг, который сломал проект. Я добавил API-интерфейс брокера, добавил несколько методов для вызова API и вызвал эти методы со страницы. Все это работало без ошибок. Затем я добавил модульный тест. это всего лишь пример проекта, поэтому я добавил новый проект для модульного теста. Вот тогда и начались ошибки. По какой-то причине API-интерфейс брокера имеет проблему с проектом модульного тестирования. - person Mr Smith; 19.12.2012

Ваша DLL может быть заблокирована, если вы скопировали ее из сетевого расположения. Попробуйте щелкнуть правой кнопкой мыши DLL> Свойства> Разблокировать

person Chris Summers    schedule 18.12.2012