天天看点

Microsoft ActiveX Control Pad 在HTML网页中插入ActiveX控件 .

开发工具:

1. Visual Studio 2005,用于ActiveX组件的开发

2. Microsoft ActiveX Control Pad,用于生成包含ActiveX Control的HTML网页。

步骤:

1. 通过Visual Studio 2005新建一个MFC ActiveX Control工程,编译之后在debug/release目录下可以找到一个XXXX.ocx文件。具体步骤可以参考MSDN。

2. 在ActiveX Control Pad选择菜单File -> New HTML,创建一个HTML页面。

3. 从ActiveX Control Pad选择菜单Edit -> Insert ActiveX Control ....,然后会弹出一个消息框。从消息框的列表中选择相应的ActiveX Control,点击OK即可将ActiveX Control插入到HTML页面。

4. 在本机通过IE浏览器打开生成的HTML即可看到ActiveX Control显示在HTML页面中。

如果把网页放到HTTP server上,要让其他电脑上可以通过IE来访问该页面并且ActiveX组件可以正常运行,还有一些额外的步骤需要完成。

通过ActiveX Control Pad生成的HTML看起来就像下面一定脚本:

<HTML>

<HEAD>

<TITLE>New Page</TITLE>

</HEAD>

<BODY>

<OBJECT ID="ActiveXControlTest11" WIDTH=100 HEIGHT=51

 CLASSID="CLSID:96908503-3BEB-4E2B-AA87-F44DC492BC0E">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2646">

    <PARAM NAME="_ExtentY" VALUE="1323">

    <PARAM NAME="_StockProps" VALUE="0">

</OBJECT>

</BODY>

</HTML>

每一个ActiveX Control都会有一个对应的CLSID,该ID是唯一的。通过OBJECT的CLASSID属性指定ActiveX Contorl的ID,就可以找到相应的ActiveX Control。每一个ActiveX Control都必须先注册,再使用。上述实例可以正常运行是因为在编译ActiveX工程的时候,VS2005会自动完成对ActiveX Control的注册。ActiveX Contorl的注册和反注册也可以通过实用工具regsvr32完成。

如HTML中对OBJECT加入CODEBASE属性,就可以让IE自动完成对ActiveX Control的注册。修改后的HTML脚本如下:

 CLASSID="CLSID:96908503-3BEB-4E2B-AA87-F44DC492BC0E"

 CODEBASE="release/ActiveXControlTest1.ocx">

相关链接:

Microsoft ActiveX Control Pad

http://msdn2.microsoft.com/en-us/library/ms968493.aspx

继续阅读