我们有一个包含自定义OCX activex的网页。 activex已签名,证书受公司中每台计算机的信任,所有计算机都运行Windows 7和IE8。
但是,当用户第一次打开网页时,UAC弹出窗口会提示您输入管理权限。根据我们的判断,OCX正在尝试在“ C:\ Windows \ Downloaded Program Files ”目录中为计算机的所有用户安装自己,这需要管理员权限。
问题是,有没有办法在网页上配置activex以便按用户安装,以便该域的任何用户都可以自己启动它?
我们可以在计算机上运行一些脚本并为所有用户安装activex,但这对我们不起作用,因为我们计划有更多的activex控件,每个都有多个版本。
感谢您的帮助!
答案 0 :(得分:0)
答案 1 :(得分:0)
(很老的q,但我刚刚完成了这个)
如果您自己控制ActiveX控件,或者可以将其重新打包到新签名的CAB文件中,则可以将.INF文件修改为每个用户,然后将其安装到用户的配置文件中。
比照http://msdn.microsoft.com/en-us/library/dd433049(v=VS.85).aspx
示例INF如下(可能还有不需要的条目):
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[DefaultInstall]
CopyFiles=install.files
[RInstallApplicationFiles]
CopyFiles=install.files
RegisterOCXs=RegisterFiles
AddReg=AddToRegistry
[DestinationDirs]
install.files=11
[SourceDisksNames]
1=%DiskName%,MyControl.CAB,1
[Add.Code]
MyControl.ocx=MyControl.ocx
MSWINSCK.ocx=MSWINSCK.ocx
[install.files]
MyControl.ocx=MyControl.ocx
MSWINSCK.ocx=MSWINSCK.ocx
[SourceDisksFiles]
MyControl.ocx=1
MSWINSCK.ocx=1
[MyControl.ocx]
file-win32-x86=thiscab
RegisterServer=yes
clsid={ACCD6812-5384-4B4F-A155-000000000000}
DestDir=
FileVersion=1,0,0,0
RedirectToHKCU=yes
[MSWINSCK.ocx]
file-win32-x86=thiscab
RegisterServer=yes
clsid={248DD896-BB45-11CF-9ABC-0080C7E7B78D}
DestDir=
FileVersion=6,1,98,17
RedirectToHKCU=yes
[Deployment]
InstallScope=User|Machine