Чтоб на новом компе прога увидела ActiveX компонент - надо его зарегистрировать в системе. Для этого вызывается утилита regsvr32.exe, а в параметрах вызова указывается путь и имя OCX файла.
И если под Windows 10 вызывать regsvr32 без прав администратора, то выдает ошибку 0x80020009.
Чтоб автоматизировать процедуру регистрации для любых OCX и DLL файлов и регистрировать их по одному клику необходимо сделать следующее:
1) Жмем Windows+R (или Пуск-Выполнить), вводим
Код: Выделить всё
shell:sendto
2) Открывается папка, в которой валяются все ярлыки прог, которые видны в меню по правому клику на любом файле (точнее, в его подменю Отправить, что по-английски будет как раз "send to").
3) Создаем в папке текстовый файл, переименовываем его в regsvr.bat
4) Жмем правой кнопкой мыши на regsvr.bat и выбираем Изменить (второй пункт сверху)
5) Файл regsvr.bat будет открыт в блокноте, вводим в блокнот следующее:
Код: Выделить всё
regsvr32 "%1"
7) Жмем правой кнопкой мыши по regsvr.bat и выбираем "Создать ярлык".
8) Переименовываем ярлык в "regsvr.bat ADMIN"
9) Жмем правой кнопкой мыши по ярлыку "regsvr.bat ADMIN" и выбираем Свойства
10) На вкладке "Ярлык" жмем внизу справа кнопку "Дополнительно"
11) В открывшемся окне ставим галку "Запуск от имени администратора" и жмем "Ок".
12) Закрываем окно свойств ярлыка кнопкой "Ок".
13) Всё, теперь можно кликать по любому OCX или DLL файлу правой кнопкой и выбирать в меню "Отправить" - "regsvr.bat ADMIN", соглашаться кнопкой "Да" на выполнение от имени администратора и получать сообщение об успешной регистрации.
p.s. для того, чтобы убрать компонент из системы ("разрегистрировать обратно"), нужно вызвать regsvr32 с ключом /u перед именем OCX/DLL файла. Кому нужно, те могут для этого создать себе также второй bat файл в меню "Отправить", вписав в него следующее:
Код: Выделить всё
regsvr32 /u "%1"