Archive for Март, 2018
Последнюю пару месяцев я настолько активно мучал «Araxis Merge», что даже засылал его разработчикам «feature requests». В последней выпуске (2018.4988) одна их хотелок была удовлетворена — появилась возможность открывать окно «Windows Expolorer» с расположением сравниваемого файла/каталога. Однако пост не про это. А про то, как запускать этого сравнивателя из «Total Commander» для объектов, выбранных в […]
На сайт IBProvider загружен новый триал OLE DB провайдера — v3.50.0.28072, в котором исправлена структурная ошибка внутреннего представления данных из за которой были специфические затруднения с модификацией базы данных. Суть проблемы заключалась в том, что провайдер не умел корректно обрабатывать DEFAULT-значения (они обрабатывались как NULL-значения). Для этого нужно было вместо пары {value, IsNull} работать с […]
В задумчивости тыкая в интерфейсе «OLE DB Rowset Viewer» (это стандартная штука для проверки провайдеров «руками и глазами»), запросил неправильный интерфейс результата и спровоцировал ассерт внутри ICommand::Execute. Релизный бинарник, как положено, возвращает E_NOINTERFACE. Изучение этой проблемы показало, что ассерт был по делу — FAILED-ошибки (типа E_NOINTERFACE) должны обрабатываться другой веткой кода, в которой (до кучи) […]
Обнаружил интересное обсуждение — «Не используйте дети malloc в Windows 10». Вкратце — похоже в Win10 поломали кучи и теперь они глючат в многопоточных приложениях. Попробовал — действительно падает. При Обаме Балмере такого не было!
Загружены бинарные файлы второго обновления IBProvider в текущем году (во завернул) — v3.49.0.27783. Изменения. 1. Запрещено использование DBBINDING с типами DBTYPE_EMPTY, DBTYPE_NULL. 2. Задействованы коды ошибок DB_E_UNSUPPORTEDCONVERSION, DB_E_BADSTATUSVALUE, DB_E_BADTYPE. 3. Уборка мусора в коде. Проводил в последний путь корзину файл с утилитами, созданный в 2000 году. Даже немного взгрустнулось. 4. Продолжил избавляться от использования классов, […]
Привет всем. Пару месяцев назад обратил внимание, что 64-битный бинарник IBProvider-а (собранный в 2017-ой) внезапно потяжелел на полторы сотни килобайт. Я еще подумал — «это с какого перепугу произошло?». Было сильное подозрение, что «это» произошло после очередного обновления студии, но так и не проверил. Сегодня обновил 2017-ю студию до версии 15.6.1 и вижу следующее: Обратно […]