В слегка предвзятом ответе вы можете посмотреть https://github.com/outworkers/phantom вместо использования стандартного драйвера java.
scala.concurrent.Future
, monix.eval.Task
или даже com.twitter.util.Future
из запроса автоматически. Вы можете выбирать между всеми тремя. ContactPoint
и Database
, в которых есть shutdown
методы, которые можно легко подключить к жизненному циклу приложения. Краткий ответ: у вас должен быть способ вызова session.close
или session.closeAsync
в течение жизненного цикла, когда вы отключаете все остальное, это как он предназначен для работы.
Различные номера версий (обычно) не имеют значения. Пока более новый DLL содержит все GUID, которые появляются в более старой версии, это будет не зарегистрировано правильно (использующий новое с regasm, exe). И конечно, перерегистрация блока для взаимодействующего с COM правильно переместит необходимые ключи реестра.
Насколько я знаю - все, в чем Вы нуждаетесь, должен зарегистрировать DLL в, он - новое местоположение.
Можно использовать инструмент MS oleview.exe, чтобы проверить, что регистрация COM указывает на корректное местоположение.