写好了OCX控件,打成了CAB包,有的机器能自己下载有的不行,我想做个安装包,如果不能自动下载安装就下载安装包安装,我现在在不能安装的机器上点INF文件安装,之后还是不好用,我想做成工行那种安装包,或是INF安装也行,请高手帮助解决下.谢谢!!!
我的INF文件如下:
[version]
signature="$CHICAGO$"
AdvancedINF=2.0[DefaultInstall]
CopyFiles=install.files
RegisterOCXs=RegisterFiles
AddReg=AddToRegistry[RInstallApplicationFiles]
CopyFiles=install.files
RegisterOCXs=RegisterFiles
AddReg=AddToRegistry[DestinationDirs]
install.files=11[SourceDisksNames]
1=%DiskName%,client.CAB,1[Add.Code]
client.ocx=client.ocx
msvcr71.dll=msvcr71.dll
mfc71.dll=mfc71.dll
msvcp71.dll=msvcp71.dll
client.lic=client.lic
client.lib=client.lib
[install.files]
client.ocx=client.ocx
msvcr71.dll=msvcr71.dll
mfc71.dll=mfc71.dll
msvcp71.dll=msvcp71.dll
client.lic=client.lic
client.lib=client.lib[SourceDisksFiles]
client.ocx=1
msvcr71.dll=1
mfc71.dll=1
msvcp71.dll=1
client.lic=1
client.lib=1
[client.ocx]
file=thiscab
DestDir=11
clsid={8E8BA3E3-6929-44E1-BBC7-E4314F87BC56}
FileVersion=1,0,0,1
RegisterServer=yes[msvcr71.dll]
file-win32-x86=thiscab
RegisterServer=no
DestDir=11
FileVersion=7,10,3052,4[mfc71.dll]
file-win32-x86=thiscab
RegisterServer=no
DestDir=11
FileVersion=7,10,3077,0[msvcp71.dll]
file-win32-x86=thiscab
RegisterServer=no
DestDir=11
FileVersion=7,10,3077,0[client.lic]
file=thiscab
RegisterServer=no
DestDir=11
FileVersion=1,0,0,1[client.lib]
file=thiscab
RegisterServer=no
DestDir=11
FileVersion=1,0,0,1[RegisterFiles]
%11%\client.ocx[AddToRegistry]
HKCR,CLIENT.clientCtrl.1\CLSID,"",%REG_SZ%,"{8E8BA3E3-6929-44E1-BBC7-E4314F87BC56}"

解决方案 »

  1.   

    自己制作一个批处理文件.bat吧,把要注册的都写上去,安装完调用shell运行一下
    regsvr32  **.ocx/s 
    ......
    .......
    .
    .
    .
      

  2.   

    cmchao 能麻烦你把.bat代码写出来吗?我不会,呵呵,还有安装完怎么调用shell啊?
      

  3.   

    还有能不能就通过INF完成注册啊?IE自动下载安装的原理是什么啊?
      

  4.   

    installshield里面直接选项,让ocx文件安装后自动注册就行了吧
      

  5.   

    gaohl 能否具体一些?谢谢.
      

  6.   

    InstallShield文件组中有一个App Self Reg DLLs
    属性中self-Registered默认为真
    直接在App Self Reg DLLs文件组里添加你的ocx控件,安装后就自动注册了