vs2008 c++创建一个MFC ActiveX控件, 在网页无法调用控件中的方法. ---我第一次尝试使用自己的OCX,谁能帮我一下?

EDN Admin

Well-known member
Joined
Aug 7, 2010
Messages
12,794
Location
In the Machine
<span style="font-size:9pt; color:black; font-family:宋体 <span style="font-size:9pt; color:black; font-family:宋体 1、<span style="font-size:9pt; color:black; font-family:宋体 打开<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana VS2008<span style="font-size:9pt; color:black; font-family:宋体 新建MFC
ActiveX<span style="font-size:9pt; color:black; font-family:宋体 项目,取名为“<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana ActiveXDemo<span style="font-size:9pt; color:black; font-family:宋体 ”.
<span>2、在“控件设置”选项卡,选择"可见时激活","运行时不可见"。其它选项卡为默认设置。最后点击“完成”按钮保存设置。
<span>3、<span style="font-size:9pt; color:black; font-family:宋体 点击“视图”,打开“类视图”窗口。
<span lang="EN-US" style="font-size:7pt; color:black 4、<span style="font-size:9pt; color:black; font-family:宋体 展开“<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana ActiveXDemoLib<span style="font-size:9pt; color:black; font-family:宋体 ”项,选中“<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana _DActiveXDemo<span style="font-size:9pt; color:black; font-family:宋体 ”项。点击鼠标右键,选择“添加”下的“添加方法”。
<p align="left" style="text-indent:-18pt; text-align:left
<span lang="EN-US" style="font-size:7pt; color:black 5、<span style="font-size:9pt; color:black; font-family:宋体 打开添加方法向导窗口。因为我们是添加一个<span style="font-size:9pt; color:black; font-family:宋体 加法方法,所以我们设置的返回类型为<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana LONG<span style="font-size:9pt; color:black; font-family:宋体 型,方法名设为<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana AddFun<span style="font-size:9pt; color:black; font-family:宋体 ,添加两个<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana LONG<span style="font-size:9pt; color:black; font-family:宋体 类型参数<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana Add1<span style="font-size:9pt; color:black; font-family:宋体 ,<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana Add2<span style="font-size:9pt; color:black; font-family:宋体 。
<span>6、<span style="font-size:9pt; color:black; font-family:宋体 打开“解决方案资源管理器”打开“<span lang="EN-US" style="font-size:9pt; color:black; font-family:Verdana ActiveXDemoCtrl.cpp<span>”文件,修改AddFun函数的返回值。
LONG CActiveXDemoCtrl::AddFun(LONG Add1, LONG Add2)<br/>
{<br/>
AFX_MANAGE_STATE(AfxGetStaticModuleState());
// TODO: 在此添加调度处理程序代码
return Add1 + Add2;<br/>
}
7、生成解决方案。-----这时可以获得一个OCX文件。
*********************************************以下代码是在HTML中调用AddFun函数**************
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd <br/>
<html xmlns=" http://www.w3.org/1999/xhtml http://www.w3.org/1999/xhtml <br/>
<head><br/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><br/>
<title>ActiveX测试</title><br/>
<script language = javascript><br/>
<br/>
function AddFun()<br/>
{<br/>
var iResult = MYAvtiveX.AddFun(12, 11);//调用ActiveX控件的AddFun方法。<br/>
alert(iResult);<br/>
}<br/>
</script><br/>
</head><br/>
<br/>
<body><br/>
<object id="MYAvtiveX" classid="clsid: 600B176C-9060-4E0A-9DDC-84AA900A4219 </object>
<br/>
<fieldset><br/>
<legend>MyActiveX TEST</legend><br/>
<table width="100%" border="1 <br/>
<tr><br/>
<td width="20% <input type=button onclick=AddFun() value=AddFun> </td><br/>
</tr> <br/>
</table><br/>
</fieldset><br/>
</body><br/>
</html> 以下是结果,谁能帮我看看,问题在哪里?这是我第一次尝试使用自己的OCX。
<img alt="" src="http://social.msdn.microsoft.com/Forums/getfile/149805

View the full article
 
Back
Top