Вести с полей.
Привет всем.
1. Сегодня остановил «бесконечное» тестирование IBProvider-а версии 3.20.1.16065 (текущий релиз, доступный для скачивания). Тестирование длилось чуть больше месяца (с 30.06.2014).
С одной стороны, вроде как бессмысленный перевод электроэнергии. А с другой — есть хоть какая-та уверенность в надежности.
В последнее время у клиентов были только проблемы связанные с настройкой подключений и ошибками в системных таблицах баз данных.
В настоящий момент уже начато нагрузочное тестирование следующей версии IBProvider-a.
2. Продолжаю медленно и печально пилить новый инсталлятор для .NET провайдера. Точнее — bootstrapper application для MSI пакета. У текущего голого MSI пакета есть небольшие проблемы, которые не позволяют нормально регистрировать DDEX провайдеры в системе. Его нужно сразу запускать с правами администратора. Да и в целом, как показывает практика, на голом MSI далеко не уедешь. Нужно задействовать внешний управляющий код.
Мягко говоря, уже немного очумеваю от того, какие вещи приходится припрягать и реализовывать (блин, я даже на бумаге немного порисовал, разруливая взаимодействие потоков). И это при том, при всем, что работать-то этот инсталлятор будет от силы одну минуту. А кода (на плюсах) уже настучал около 0.5 мегабайта. Но пока все получается. И хочется надеяться, что под финиш не вылезет какой-нибудь косяк в нижележащем коде из WIX, который выполняет основную работу с MSI пакетом.
Вообще, в WIX есть болванка для создания этого самого bootstrapper application (классы CBalBaseBootstrapperApplication, CWixStandardBootstrapperApplication). Но конечный результат выглядит так убого… Да и от плюсового кода этой болванки, написанного по-всей видимости сишными программистами, меня просто мутит. Замысел «афторов» в этих классах я не асилил/забраковал и опустился до самого нижнего уровня — интерфейса IBootstrapperApplication. Благо ребята здесь не выпендривались и взяли за основу IUnknown. Хотя я бы разделил его на 4 интерфейса — базовый и нотификационные для стадий detect/plan/apply. Было бы надежнее и красивее.
Будете
у нас на Колымеписать аналогичную хрень — обращайтесь. Помогу чем смогу 🙂