У меня есть сторонний компонент, который включает в себя файлы .LIB и .DLL. Чтобы использовать компонент, я связываю .LIB с моей программой на C ++ и распространяю .DLL вместе с приложением. Предоставленная функциональность очень специфична и подходит только для небольшой группы моих пользователей, но за распространение .DLL взимается лицензионный сбор.
Одна из работ здесь заключается в том, чтобы иметь две версии моего приложения, одна из которых связана со сторонним компонентом, а другая - нет, но я бы предпочел избежать дополнительного времени, связанного с поддержкой и распространением второй сборки.
В идеале я хотел бы просто исключить .DLL из дистрибутива, но если я сделаю это, я получу ошибку 'Это приложение не запустилось, поскольку XXXXX.DLL не был найден. Переустановка приложения может решить эту проблему '. Это исключение, которое я могу поймать и разобраться в моем коде? В качестве альтернативы, можно ли отложить загрузку .DLL до тех пор, пока не будет предпринята попытка вызвать конкретную предоставленную функциональность и затем обработать ее, или просто проверить наличие .DLL и действовать соответствующим образом?
Среда - VS 2003 и VS 2008.