12 个解决方案
#1
可以用cabarc来打包分发,要自己写INF文件,如下:
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
***.dll=***.dll
[Deployment]
InstallScope=machine
[***.dll]
file-win32-x86=thiscab
clsid={FAE5660C-DBFF-4280-A746-8601692ECC72}
RegisterServer=yes
RedirectToHKCU=yes
FileVersion=1,0,0,1
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
***.dll=***.dll
[Deployment]
InstallScope=machine
[***.dll]
file-win32-x86=thiscab
clsid={FAE5660C-DBFF-4280-A746-8601692ECC72}
RegisterServer=yes
RedirectToHKCU=yes
FileVersion=1,0,0,1
#2
做好CAB包后,放到HTTP服务器上就可以了,在页面里要如此写:
<object classid="clsid:FAE5660C-DBFF-4280-A746-8601692ECC72" id="××××"
name="××××" style="border:2px solid 0000ff"
codebase="http://10.34.63.164/××××.cab#version=1,0,0,1"></object>
<object classid="clsid:FAE5660C-DBFF-4280-A746-8601692ECC72" id="××××"
name="××××" style="border:2px solid 0000ff"
codebase="http://10.34.63.164/××××.cab#version=1,0,0,1"></object>
#3
我在那个调试软件里运行可以。。打包之后,在本地就显示一个红叉,这是为什么
#4
我在那个调试软件里运行可以。。打包之后,在本地就显示一个红叉,这是为什么
#5
本机吗?你调试用的什么方式?用的HTML页面吗?检查过CLSID了吗?
#6
vc 6.0自带的activex control test container 用html调试.ocx也可以啊。。打包之后就不可以了
#7
冷汗,这明显不应该啊?MFC的ActiveX控件?测试代码show一下吧,真不好猜测什么问题了~
#8
控件注册成功后,在怎么折腾它也不会说显示为红叉叉啊。你确认CLSID没有写错~
#9
<HTML>
<HEAD>
<TITLE>New Page</TITLE>
</HEAD>
<BODY>
<object id="safeEdit1"
classid="34174022-7879-47A4-A388-0D33FF67BFD1"
codebase="D:\activex\safeEdit\Debug\safeEdit.cab#version=1,0,0,1"
width=145 height=21>
</object>
</BODY>
</HTML>
这个是不是i有问题。。。
#10
<HTML>
<HEAD>
<TITLE>New Page</TITLE>
</HEAD>
<BODY>
<OBJECT ID="SafeEdit1" WIDTH=151 HEIGHT=40
CLASSID="CLSID:34174022-7879-47A4-A388-0D33FF67BFD1">
<PARAM NAME="_Version" VALUE="65536">
<PARAM NAME="_ExtentX" VALUE="3969">
<PARAM NAME="_ExtentY" VALUE="1058">
<PARAM NAME="_StockProps" VALUE="0">
</OBJECT>
</BODY>
</HTML>
这是我html测试的,这个可以正常显示。所以clsid应该没错吧。。
#11
之前那个问题解决了。。费了好大功夫,现在在本地可以使用了。。那怎么让别人使用。。这个http服务器要自己下载吗,具体怎么弄。。
#12
用apache搭建一个测试服务器不就得了
#1
可以用cabarc来打包分发,要自己写INF文件,如下:
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
***.dll=***.dll
[Deployment]
InstallScope=machine
[***.dll]
file-win32-x86=thiscab
clsid={FAE5660C-DBFF-4280-A746-8601692ECC72}
RegisterServer=yes
RedirectToHKCU=yes
FileVersion=1,0,0,1
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
***.dll=***.dll
[Deployment]
InstallScope=machine
[***.dll]
file-win32-x86=thiscab
clsid={FAE5660C-DBFF-4280-A746-8601692ECC72}
RegisterServer=yes
RedirectToHKCU=yes
FileVersion=1,0,0,1
#2
做好CAB包后,放到HTTP服务器上就可以了,在页面里要如此写:
<object classid="clsid:FAE5660C-DBFF-4280-A746-8601692ECC72" id="××××"
name="××××" style="border:2px solid 0000ff"
codebase="http://10.34.63.164/××××.cab#version=1,0,0,1"></object>
<object classid="clsid:FAE5660C-DBFF-4280-A746-8601692ECC72" id="××××"
name="××××" style="border:2px solid 0000ff"
codebase="http://10.34.63.164/××××.cab#version=1,0,0,1"></object>
#3
我在那个调试软件里运行可以。。打包之后,在本地就显示一个红叉,这是为什么
#4
我在那个调试软件里运行可以。。打包之后,在本地就显示一个红叉,这是为什么
#5
本机吗?你调试用的什么方式?用的HTML页面吗?检查过CLSID了吗?
#6
vc 6.0自带的activex control test container 用html调试.ocx也可以啊。。打包之后就不可以了
#7
冷汗,这明显不应该啊?MFC的ActiveX控件?测试代码show一下吧,真不好猜测什么问题了~
#8
控件注册成功后,在怎么折腾它也不会说显示为红叉叉啊。你确认CLSID没有写错~
#9
<HTML>
<HEAD>
<TITLE>New Page</TITLE>
</HEAD>
<BODY>
<object id="safeEdit1"
classid="34174022-7879-47A4-A388-0D33FF67BFD1"
codebase="D:\activex\safeEdit\Debug\safeEdit.cab#version=1,0,0,1"
width=145 height=21>
</object>
</BODY>
</HTML>
这个是不是i有问题。。。
#10
<HTML>
<HEAD>
<TITLE>New Page</TITLE>
</HEAD>
<BODY>
<OBJECT ID="SafeEdit1" WIDTH=151 HEIGHT=40
CLASSID="CLSID:34174022-7879-47A4-A388-0D33FF67BFD1">
<PARAM NAME="_Version" VALUE="65536">
<PARAM NAME="_ExtentX" VALUE="3969">
<PARAM NAME="_ExtentY" VALUE="1058">
<PARAM NAME="_StockProps" VALUE="0">
</OBJECT>
</BODY>
</HTML>
这是我html测试的,这个可以正常显示。所以clsid应该没错吧。。
#11
之前那个问题解决了。。费了好大功夫,现在在本地可以使用了。。那怎么让别人使用。。这个http服务器要自己下载吗,具体怎么弄。。
#12
用apache搭建一个测试服务器不就得了