среда, 16 декабря 2015 г.

Could not load file or assembly or one of its dependencies

Подключил к dotNET проекту стороннюю библиотеку, запускаю, получаю FileNotFoundException Не удалось загрузить файл или сборку "***.dll" либо одну из их зависимостей. Не найден указанный модуль.(Could not load file or assembly '***.dll' or one of its dependencies. The specified module could not be found.)
Как посмотреть зависимости?
первая идея ILSpy, но проблема была в том, что сторонняя сборка требует кучу unmanagement библиотек.
на помощь пришла утилитка Dependency Walker
короче рекомендую

понедельник, 23 ноября 2015 г.

RabbitMQ: Erlang machine stopped instantly (distribution name conflict?).

Сменилось имя компа, соответственно при запуске службы RabbitMQ она сразу крешилась со следующими сообщениями в логе:

  • RabbitMQ: Erlang machine stopped instantly (distribution name conflict?). The service is not restarted as OnFail is set to ignore.
  • Служба "RabbitMQ" завершена из-за ошибки Процесс был неожиданно завершен.

В папке C:\Users\{MyUserName}\AppData\Roaming\RabbitMQ\db были найдены папки, в названии которых фигурировало старое имя компа.

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

  1. cd %programfiles(x86)%\RabbitMQ Server\rabbitmq_server-3.5.6\sbin
  2. rabbitmq-service.bat remove
  3. rabbitmq-service.bat install
все действия пришлось выполнять "От имени администратора"