в соответствии с Элементы управления ActiveX без прав администратора , возможно зарегистрировать activeX под текущим пользователем (для этого не потребуется права администратора во время установки).
Я разработал проект ATL (VS2008, нативный) и добавил элемент управления ATL, который ничего не делает.
Я создал файл inf:
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
Batman.dll=Batman.dll
[Deployment]
InstallScope=user
[Batman.dll]
file-win32-x86=thiscab
clsid={2C10EC82-2BF3-4ED5-8AFC-E5146C672B3D}
FileVersion=1,0,0,1
RegisterServer=yes
Добавьте как dll, так и inf в CAB и подписайте его.
Я загружаю ActiveX с простой HTML-страницы
<OBJECT ID="sampleControl" CLASSID="CLSID:2C10EC82-2BF3-4ED5-8AFC-E5146C672B3D" CODEBASE="Batman.cab#Version=1,0,0,1"></OBJECT>
И это никак не регистрирует его под текущим пользователем.
В случае, если я укажу InstallScope = машина, проблем нет, ActiveX загружен.
Есть идеи, что делать?
Спасибо