Отказ от ответственности: я не разработчик C ++, я могу делать только основные вещи. (Я понимаю указатели, просто мои знания настолько ржавые, я не касался c / c ++ около 20 лет :))
Настройка: у меня есть надстройка Outlook, написанная на C # /. Net 1.1. Для загрузки используется c ++ shim .
Обычно это работает довольно хорошо, и я использую в своем коде c # nlog для ведения журнала. Но иногда надстройка не загружается, т.е. для меня это не касается управляемого кода, чтобы я мог исследовать проблему из файлов журнала.
Итак, мне нужно подключить простую регистрацию в shim c ++ - просто записать в файл. Мне нужно сделать его максимально простым для наших пользователей. На самом деле я бы предпочел не отправлять его по умолчанию.
Я думал о чем-то, что проверит, присутствует ли конкретная dll (dll для ведения журнала), и, если да, ее использовать. В противном случае, он просто не будет ничего регистрировать. Таким образом, когда у меня есть пользователь с такими проблемами, я могу отправить ему только лог-файл журнала, пользователь сохранит его в каталоге времени выполнения, и у меня будет файл.
Я полагаю, что это должно быть сделано с какой-то формой заводского решения, которое возвращает либо фиктивный логгер, либо, если dll найден, реальный.
Другим вариантом может быть создание какого-либо простого регистратора и перестройка прокладки с использованием или без него на основе директив. Это не желательный подход, потому что прокладка должна быть подписана, и я должен поручить пользователю сделать резервную копию «реальной», затем восстановить, когда это будет сделано, и т. Д., Вместо того, чтобы просто сохранить и удалить DLL .
Буду признателен за любое хорошее предложение, как к нему подойти, вместе со ссылками или примером кода, как поступить после этого.
Приветствия