说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

如何在网页上注册ACTIVEX控件

编辑:说三道四文库 发布时间:2018-08-19 08:02
HTML文档下载 WORD文档下载 PDF文档下载
我有一个FORM LISTBOX控件在网页上,只有安装了OFFICE或VS才能正常显示,我想应该是要注册,好象是FM20。DLL,但是我不知道如何才能实现,请教!!!
我想要具体的实现方法:我知道好象是要打包成CAB,CAB中有INF和DLL两个文件,但不知道具体怎么做
regsvc c:\aaaa\fm20.dll
c:\aaa\fm20.dll为路径
组件注册:
“开始”—>"运行",在输入框里输入regsvr32 x:\文件路径\fm20.dll
                                          ^表示盘符
我是要在网页中通过代码来实现,不是用命令来执行的

Client use asp to register the exist dll file


<script language="vbscript">
' we had produce the WebReport.dll file and place in the client 
'win <98 \windows\system\WebReport.dll
'win 98 \windows\system32\WebReport.dll
'win nt40 \winnt\system\WebReport.dll 
'win 2000 \winnt\system32\WebReport.dll 
sub fun_reg() 
Dim WshShell,fso
Set WshShell = CreateObject("Wscript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")

If fso.FileExists("\windows\system\WebReport.dll") Then 
WshShell.run "regsvr32 /s \windows\system\WebReport.dll" , 1, true
msgbox "Register \windows\system\WebReport.dll file sucess!" 

elseIf fso.FileExists("\windows\system32\WebReport.dll") Then 
WshShell.run "regsvr32 /s \windows\system32\WebReport.dll" , 1, true
msgbox "Register \windows\system32\WebReport.dll file sucess!" 

elseIf fso.FileExists("\winnt\system\WebReport.dll") Then 
WshShell.run "regsvr32 /s \winnt\system\WebReport.dll" , 1, true
msgbox "Register \winnt\system\WebReport.dll file sucess!" 

elseIf fso.FileExists("d:\dll\shconnect.dll") Then 
WshShell.run "regsvr32 /s d:\winnt\system32\WebReport.dll" , 1, true
msgbox "Register d:\winnt\system32\WebReport.dll file sucess!" 
else
msgbox "Not found the register dll file!" 
end if 
set fso=nothing
set WshShell=nothing

end sub 
</script>
dll文件需要自动下载,怎样实现呢?
正如你所说的,做cab文件,用delphi做一个看看就知道了
在html页面上:

<OBJECT ID="fm2"
CLASSID="CLSID:10C3043E-25FA-4760-8CB1-1AA0F82ACDEF"
CODEBASE="fm20.cab#version=1,0,0,0">
</OBJECT>

制作cab的话,可以用install shield 等打包工具或是delphi,vb6都可以(如果有源码的话)
CLASSID="CLSID:10C3043E-25FA-4760-8CB1-1AA0F82ACDEF"
这里只是个例子,根据不同的dll,会注册不同的classID
用makecab.exe制作cab包

"E:\Program Files\Microsoft Visual Studio\VB98\Wizards\PDWizard\MAKECAB.EXE" /f "控件名.DDF"


.ddf文件中描述了.ocx或.dll文件和.inf文件
<OBJECT ID="fm2"
CLASSID="CLSID:10C3043E-25FA-4760-8CB1-1AA0F82ACDEF"
CODEBASE="fm20.cab#version=1,0,0,0">
</OBJECT>

==============================
不会连这个都不知道吧?
还要做数字签名,否则是不安全的activex控件,浏览器不会下载安装的
如果是ms自己的控件,你可以到vs里找到该控件的classid的
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘