А каков размер этих дополнений? При нынешнем интернете гигабайт туда, гигабайт сюда - роли не играет. Объявляете своим преданным пользователям о глобальном апдейте, все (или не все, если нужно) актуальные дополнения пихаете в один новый инсталлятор без проверок контрольной суммы основного исполняемого файла. Проверки наличия файла с названием вашей программы будет вполне достаточно.
Код:
Function .onVerifyInstDir
IfFileExists "$INSTDIR\имя-моей-программы.exe" PathGood
Abort
PathGood:
FunctionEnd
Или ваши дополнения могут работать с любым исполняемым файлом? Уверен, что нет! Я просто не могу въехать, зачем проверять контрольную сумму главного исполняемого файла, если все выпущенные до этого дополнения работают с любой версией этого файла?