В одной из моих программ потребовалось использование подключаемых модулей (адд-онов). Соответственно, я написал DLL-ку, которая предоставляла бы нужные свойства и методы всех аддонов в определённой папке (каждый адд-он представляется как элемент коллекции).
Но библитека не захотела корректно работать - при запуске главное приложение зависало вместе с ней. Как выяснилось после отладки - причиной зависания была функция CreateObject (находщаяся в класе Plugin), которая при каждом вызове генерировала ошибку, даже после того, как в обработчике ошибок обрабатываемый адд-он регистрировался, т. е. был цикличный вызов обработчика ошибок, затем регистрация адд-она, затем Resume...
Где в коде допущена ошибка?