C# 实现ActiveX插件

时间:2021-03-28 21:02:07

本人使用的是VS2010,.net 3.5

虽然很多ActiveX是由C++等做的,但是因为.net(C#)实现起来更加快捷,随着win7的不断推广,使用.net 做的ActiveX也不失是一个好选择。


1. 创建一个windows 窗体控件库项目。

C# 实现ActiveX插件


在我们完成新建控件库项目后,

2. 打开项目属性,在应用程序的选项卡中,点击程序集信息(I)按钮,如下图所示:

C# 实现ActiveX插件


3. 在“生成” 选项卡,选择下方的“为 COM 互操作注册”,如下图所示:

C# 实现ActiveX插件

4.打开Assembly.cs,加入:

using System.Security;

[assembly:AllowPartiallyTrustedCallers()]

C# 实现ActiveX插件

5. 打开UserControl1.cs

添加:using System.Runtime.InteropServices;

   [Guid("3CEF17D6-180B-4D91-BFCC-BD4FEC9FFF41")]

如下图所示:

C# 实现ActiveX插件

至此,我们就完成了一个非常简单的ActiveX,然后我们制作一个安装程序

6. 创建一个安装程序,我这里的创建是:

 选择“其他项目类型” -->“安装和部署" -->"Visual Studio Installer",选择”安装项目",如下图所示:

C# 实现ActiveX插件


7. 应用程序文件夹,右键,主输出选择你所创建的ActiveX项目

C# 实现ActiveX插件

8.生成安装项目即可。

9.创建一个web项目,在页面上输入:

<object classid="clsid:3CEF17D6-180B-4D91-BFCC-BD4FEC9FFF41" codebase="UserControlActiveXSetup.msi"></object>

其中,codebase是ActiveX安装文件所在的位置,可以使用相对路径的方式。“3CEF17D6-180B-4D91-BFCC-BD4FEC9FFF41”这个GUID填写你在类头上所写的GUID。


    这是最简单的创建ActiveX的方式,方便于学习ActiveX如何创建。如果ActiveX没有生效,则在IE浏览器的安全设置上允许未注册的ActiveX运行。