各位"富翁"们,快点进来看看!(200分)

  • 主题发起人 主题发起人 lzjingyu
  • 开始时间 开始时间
L

lzjingyu

Unregistered / Unconfirmed
GUEST, unregistred user!
可能我说的有点过激,请大家原谅!但小弟实在着急啊,却没有人理会。
//-------------------------------------
怎样让IE客户端自动下载的CAB包按照里面的INF配置进行OCX自动注册?
另外是不是我的INF文件也有问题,也把INF贴出来,让各位帮忙看看,这东西很急,拜托了,我找了很多网站,大富翁也翻遍了,没有最终的解释!
//inf
[version]
signature="$CHICAGO$"
AdvancedINF=2.0

[Add.Code]
NVS2000.ocx=NVS2000.ocx
midas.dll=midas.dll

[NVS2000.ocx]
;file-win32-x86 是指定平台是 x86。
file=http://192.168.0.23/NVSWEB/NVS2000.cab
clsid={4D5E93AE-DAEF-4691-92A0-D8F1926F0E35}
RegisterServer=yes
FileVersion=1,0,6,0

;needed DLL
[midas.dll]
file=http://192.168.0.23/NVSWEB/NVS2000.cab
FileVersion=7.0.4.453
DestDir=11
RegisterServer=yes

end of INF file

//html
<OBJECT id=&quot;NVS2000&quot;
classid=&quot;clsid:4D5E93AE-DAEF-4691-92A0-D8F1926F0E35&quot;
codebase=&quot;http://192.168.0.23/NVSWEB/NVS2000.cab#version=1,1,6,0&quot;
width=1008
height=715
align=center
hspace=0
vspace=0
>
<param name=&quot;Visible&quot
value=&quot;0&quot;>
<param name=&quot;AutoScroll&quot
value=&quot;1&quot;>
<param name=&quot;AutoSize&quot
value=&quot;0&quot;>
<param name=&quot;AxBorderStyle&quot
value=&quot;1&quot;>
<param name=&quot;Caption&quot
value=&quot;NVS2000WEB端&quot;>
<param name=&quot;Color&quot
value=&quot;2147483663&quot;>
<param name=&quot;Font&quot
value=&quot;宋体&quot;>
<param name=&quot;KeyPreview&quot
value=&quot;0&quot;>
<param name=&quot;PixelsPerInch&quot
value=&quot;96&quot;>
<param name=&quot;PrintScale&quot
value=&quot;1&quot;>
<param name=&quot;Scaled&quot
value=&quot;-1&quot;>
<param name=&quot;DropTarget&quot
value=&quot;0&quot;>
<param name=&quot;HelpFile&quot
value>
<param name=&quot;DoubleBuffered&quot
value=&quot;0&quot;>
<param name=&quot;Enabled&quot
value=&quot;-1&quot;>
<param name=&quot;Cursor&quot
value=&quot;0&quot;>
<param name=&quot;HelpType&quot
value=&quot;0&quot;>
<param name=&quot;HelpKeyword&quot
value>
<param name=&quot;isReadOnly&quot
value=&quot;0&quot;>
<param name=&quot;isSetup&quot
value=&quot;1&quot;>
</OBJECT>

说明部分:
;IE自动下载OCX并注册步骤
;1、编写类似上述INF文件
;2、将该INF及所提及的OCX及所需的DLL文件按顺序做成CAB文件包(存档在CAB 文件中的文件需要在命令


行列出,次序同它们在INF文件中完全一致,INF文件放到最后)

<CABARC -s 6144 POLYGON.CAB ATL.DLL POLYGON.DLL POLYGON.INF>

其中,CAB包中的文件需要在命令行列出,次序同它们在INF文件中的完全一致,-s选项为代码签署保


留空间,n 命令指定创建的是CAB文件。

;3、签署一个CAB文件-- 暂时不签名
;4、在要客户端访问的HTML文件的<OBJECT>..</OBJECT>之间添加 id、clsid、codebase及fileversion等

信息
;5、任何必要的DLL支持必须已经装载到了客户机上。
不知道小弟的理解是否正确,请帮忙看看!
 
[red]晕了,怎么没有人关注这个话题啊,我知道DELPHI做B/S很不爽,但现在要,也没有办法,先看看了,多学点东西嘛![/red]
 
在Html文件添加一段以下的内容就可以了,其中ID,Name及Codebas的内容根据你的要求改写:
<OBJECT
id=WebPrint name=WebPrint
classid=&quot;clsid:C8B52DBD-BBEB-48A3-9E82-CB4949881027&quot;
codebase=&quot;/files/WebReport.cab#version=1,0,4,0&quot;
width=100%
height=100%
align=center
>
 
szlbz:
我上面的HTML文件中已有这样的引用了,又加了ID,NAME可还是不行啊?
 
[red][/red]各位大侠,是嫌分数少还是不会啊?在线等待....
 
只 能 支 持 你 了
 
lzjingyu:那可能是给IE禁用了,你可以将安全等级降低或将IE安全设置中ActiveX中的相关设置为“启用”应该就可以了。
 
lzjingyu:那可能是给IE禁用了,你可以将安全等级降低或将IE安全设置中ActiveX中的相关设置为“启用”应该就可以了。
 
李维的书不是告诉过你吗?
RegisterServer=yes 不是乱加的?
midas.dll不是类库,怎么注册。
改成。
RegisterServer=no
 
file写
file=thiscab
就可以了。
如果midas.dll不能注册
在[midas.dll]中加入
clsid={9E8D2FA7-591C-11D0-BF52-0020AF32BD64}
试试,
 
lzjingyu:那可能是给IE禁用了,你可以将安全等级降低或将IE安全设置中ActiveX中的相关设置为“启用”应该就可以了。
 
szlbz: 我的IE设置activeX全部都启用了
铁盒子: 早试了,没有用。
蓝叶菱:midas.dll是可以注册的啊

我现在把自己计算机中的NVS2000.OCX 卸载后,再打开网页虽然也提示要安装CAB包,但结果没有反应,应该是没有注册成功.
1、cabarc -s 6144 n NVS2000.cab NVS2000.ocx midas.dll NVS2000.inf
2、INF
[version]
signature=&quot;$CHICAGO$&quot;

[Add.Code]
NVS2000.ocx=NVS2000.ocx

[NVS2000.ocx]
file=thiscab
clsid={4D5E93AE-DAEF-4691-92A0-D8F1926F0E35}
RegisterServer=yes
FileVersion=1,0,6,0
DestDir=11

3、HTML (仅仅一部分)
<OBJECT id=&quot;NVS2000&quot;
name=&quot;NVS2000&quot;
classid=&quot;clsid:4D5E93AE-DAEF-4691-92A0-D8F1926F0E35&quot;
codebase=&quot;http://192.168.0.23/NVSWEB/NVS2000.cab#version=1,1,6,0&quot;
width=1005
height=715
align=center
hspace=0
vspace=0
>
 
在其他电脑正常吗?
 
你的INf文件里的版本和你的html文件里的版本好像不一样;
 
不好意思
今天太忙了,没有顾上调试这个
就在早上写了个简单的OCX,并按照我上面写的制作顺序包含DLL打包发布了
在其他计算机均可以正常下载注册并使用
由此可以推断是我的INF及CAB包的问题
该OCX注册时需要包含里面的DLL文件,并且还要先注册另外一个OCX,并且另外这个OCX也要许多辅助DLL
目前正在测试//
呵呵
先睡觉了,祝愿大家开心
 
对不起大家
目前比较忙
公司走了几位同事
心情不爽
找到了故障,但还没有进行最终确认,在注册我的OCX之前需要注册另外的一个OCX控件及MIDAS.DLL还有N多个其他的DLL文件,我做个一个EXE程序,连同我的OCX文件与其他DLL打包成CAB文件,其中都包含版本信息,在INF及HTML中都要修改。
等我完成后,会把最后的解决办法贴出来,希望有这方面的困难的朋友少走些弯路。
另外,分数也会同时发送。
 
继续将我的问题提前
因为我的问题还没有解决
但我已经找到问题所在了
中间层的问题
我在另外一台电脑上面可以正在下载安装
但必须要再开启一个中间层在该电脑上
可这根本不合常理啊
有人回答么
 
结贴了
我的问题通过断断续续的调试,终于找到问题的根源
其实很简单:
1、我的SOCKET连接默认连接状态是开着的
2、另外还有一定要注册中间层的类型库文件。
最后希望的遭遇能够让大家少走些弯路。
 
后退
顶部