我写了一个activeX插件并制作了一个cab文件来用2个dll文件打包ocx,然后调用a.dll和b.dll。ocx 依赖于 a.dll,a.dll 依赖于 b.dll。inf 文件是这样的:
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
test.ocx=test.ocx
a.dll=a.dll
b.dll=b.dll
[test.ocx]
file-win32-x86=thiscab
clsid={AB1408A0-10F6-40BA-984D-074D7BDC3126}
FileVersion=3,1,0,17
DestDir=11
RegisterServer=yes
[a.dll]
file-win32-x86=thiscab
FileVersion=2,1,1,16
DestDir=11
[b.dll]
file-win32-x86=thiscab
FileVersion=2,0,0,16
DestDir=11
下载完成后,我发现a.dll在C:/windows/system32中不存在,但其他两个文件已经在其中并且ocx已经注册。
a.dll 是我自己写的。b.dll 是一个第三方库。
我对此感到非常困惑,并渴望得到您的帮助。