访问ActiveX Document,总是问是否下载
编号:QA002644
建立日期: 2000年2月28日 最后修改日期:2000年2月28日
所属类别:
于波:
操作系统:Win98
编程工具:Vb5
问题:环境: 中文VB5 企业版
中文 WIN98 4.10.1998
服务器端和客户端均采用WIN98,DCOM98 4.71.1015.0
Frontpage express(带Personal Web Server,web server 名为Frank)
问题:我在VB5中学习使用Activex Document创建Internet程序(涉及远程自动化服务器,当用户访问应用程序时,Remote Automation服务器通过日志文件收集信息),在本机运行良好。但用VB制作了安装盘之后,我将安装盘目录下的全部文件带目录拷贝到\Interpub\wwwroot下,从客户端打开\frank\mortgage.HTM,总提示"您已选择从该位置下载文件。Mort.VBD来自frank。 如何处理该文件在文件的当前位置打开或将该文件保存到磁盘"后提示打开方式,选择IE"确定"后该提示仍然出现。取消后文档空白。而如果手工注册了Mortgage.dll,又会提示\Win98\Temporary Internet Files\kmyn5f89\mort(1).vbd拒绝使用的信息。经查,在win98\Temporary Internet Files下形成"?CodeDownLoadErrorLog!name={E5F9FAC7-E84C-11D3-AD37-0080C88D5909}.htm",错误提示如下:
*** Code Download Log entry (21 Apr 1999 @ 11:18:38) ***
Code Download Error: (hr = 8007007e) 找不到指定的模块。
Operation failed. Detailed Information: CodeBase: http://frank/mortgage.CAB
CLSID: {E5F9FAC7-E84C-11D3-AD37-0080C88D5909} Extension: (null)
Type: (null)LOG: Item MORTGAGE.DLL being processed.
--- Detailed Error Log Follows ---LOG: Item MORTGAGE.DLL being processed.
LOG: Item CLIREG32.EXE being processed.
LOG: URL Download Complete: hrStatus:0, hrOSB:0, hrResponseHdr:8007007e, URL:(http://frank/MSRACli.cab)
ERR: INF Processing: Failed (80004004) processing: RemoteReg1
. Cannot get primary/default language!LOG: URL Download Complete: hrStatus:0,
回答:
我可能已经找到了答案。
实际上是,该错误信息已经提示了,由于处理Mortgage.cab时出现问题,导致mortgage.dll并没有下载到本机,按未注册处理了,为什么呢?
VB形成的安装盘中缺少一个次级包。打开mortgage.cab里的mortgage.inf查看,发现缺少MSRACli.cab包,其中的文件应该是CLIREG32.EXE和Msracli.inf。随按照Remotereg.inf文件格式编写了msracli.inf
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[DefaultInstall]
CopyFiles=install.files
[DestinationDirs]
install.files=11
[SourceDisksNames]
1="default",,1
[install.files]
CLIREG32.EXE=CLIREG32.EXE
[CLIREG32.EXE]
file-win32-x86=thiscab
再在\VB\setupkit\kitfil32目录找到Makecab.exe程序进行打包。
注意:如使用它一次对多个文件打包,先要写一个包含打包文件的文本文件,然后在命令行执行 Makecab /F dir.txt,系统将在当前目录下形成一个子目录和setup*.*共两个文件。将该目录下的CAB文件改名为Msracli.cab即可。
而如果手工注册了Mortgage.dll,又会提示“对指定设备、路径或文件的访问被拒绝”,\Win98\Temporary Internet Files\kmyn5f89\mort(1).vbd拒绝使用的信息。这实际为编译的Mortgage.dll在作怪,可以执行Regsvr32.exe /u c:\source\mortgage.dll将该文件反注册,然后删除\WIN98\下的WEB下载的临时文件。然后在IE中FRANK\MORTGAGE.HTM,系统将下载这三个包和Mortgage.htm和Mort.vbd文件在临时目录下,对应的Mortgage.mort则会被安装在\WIN98\DOWNLOADED PROGRAM FILES下并注册。
此问题由于波回答。
| |
|
|
| |
|
|