Есть ли разница между TerminateExtension () и деструктором расширений? Очевидно, что оба используются для очистки ресурсов, но какая очистка должна быть в одной функции, а не в другой?
Функция TerminateExtension принимает DWORD dwFlags. Если это HSE_TERM_ADVISORY_UNLOAD, вы можете вернуть FALSE или TRUE, чтобы разрешить или запретить выгрузку.
TerminateExtension
Конечно, в деструкторе вашего класса такой опции нет.
http://msdn.microsoft.com/en-us/library/ms524470.aspx