爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
C#教程
C#开发active插件
C#开发active插件
日期:2014-05-17 浏览次数:21318 次
C#开发active插件!
先说说ActiveX的基本概念。 根据微软权威的软件开发指南MSDN(Microsoft Developer Network)的定义,ActiveX插件以前也叫做OLE控件或OCX控件,它是一些软件组件或对象,可以将其插入到WEB网页或其它应用程序中。 ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。在创建包括ActiveX程序时,主要的工作就是组件,一个可以自足的在ActiveX网络(现在的网络主要包括Windows和Mac)中任意运行的程序。这个组件就是ActiveX近控件。ActiveX是Microsoft为抗衡Sun Microsystems的JAVA技术而提出的,此控件的功能和JAVA applet功能类似。 目前支持ActiveX的主要是IE浏览器。 以前ActiveX开发普遍使用VC++或VB,随着C#和.net的发布,用C#开发ActiveX控件变得更方便、更简单。但需要注意的是用C#开发的ActiveX控件需要客户机装有.net framework,有点郁闷。可是相对.net强大的功能良好的易用性,这点牺牲还是值得的,况且现在好多计算机已经安装有.net framework了。 其实.net下的winform控件也是可以直接嵌入到web网页里的,但是由于.net安全性的限制,无法在客户端实现复杂的操作,比如磁盘空间操作和注册表操作。因为ActiveX控件是以本地用户的身份运行,可以突破.net安全性的限制,所以开发ActiveX控件还是很必要的。 C#写ActiveX控件的原理很简单,就是使用了.net平台和COM的互操作性。修改项目属性的目的就是将.net控件注册为com。这样,你就可以把这个控件完全当作ActiveX控件来对待了。比如,可以使用JS和VBS来调用,也可以使用C++来调用。 下面一步步来实现C#写ActiveX控件。
第一部分:用vs2008制作一个winForm控件 用vs2008建立一个新的“windows窗体控件库”命名为“WindowsFormsControlLibrary1”如下图
点击确定后,将UserControl1.cs更名为demo.cs。向界面里添加一个Labal、一个TextBox和一个Button,相应的修改控件属性。如下图:
为button1添加Click事件,代码如下:
private void button1_Click(object sender, EventArgs e)
{
label1.Text = textBox1.Text;
}
在AssemblyInfo.cs中引用System.Security命名空间,并添加一句:
[assembly : AllowPartiallyTrustedCallers()]
好,现在编译整个工程,生成\bin\Debug\WindowsFormsControlLibrary1.dll,我们的winform控件就做好了。 下面在解决方案里添加一个web应用程序的工程,名为WebApplication1,用来测试我们的控件。 将WindowsFormsControlLibrary1.dll拷贝到WebApplication1所在的目录下。然后在Default.aspx里面加入“<object id="helloworld" classid='http://localhost:59639/WindowsFormsControlLibrary1.dll#WindowsFormsControlLibrary1.demo' width="184" height="96" >
上一篇:Ftp.dll操作上传FTP文件
下一篇: DevExpress 怎么在工具栏中添加图标并且改变图标的大小
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
水晶报表 只显示第一行,该怎么解决
没有实现IComparable,Sort函数为什么是编译时不检查异常,而是运行时检查异常
wpf中怎么让多个控件使垂直间距相等
哪位高手可以详细解释一下代码中经常出现在函数头的,<System.Diagnostics.DebuggerStepThrough()><DllImport("Kernel32.DLL" SetLastError=t
小弟我如何可以知道小弟我家里电脑是开着的呢,小弟我在外面用手机上网
Entity framework的这个bug大伙遇到过没,疯了
在SqlServer2005管理工具里手动传值可以正确执行存储过程,如果使用sqlcommand执行的时候没有报错,但就是不出结果,有关问题解决立刻给分
不容易的递归!c#递归方法实现裴波那契数列!解决思路
bits 数组操作时,左右的有关问题。
推荐阅读
更多>
帮忙解决一下集合取值有关问题
雪地裸跪,求答案关于TransactionScope的有关问题
怎么用C# GUI 画动态的正弦线,就像示波器一样的
兄弟小弟我是个菜鸟,在做一个记事本时遇到个有关问题,
在线急 ~ sql 语句 解决立即给分,该怎么解决
C#调用Aceess数据库,该如何处理
关键字 'where' 附近有语法异常
请教怎么在C#下建立双向SSL呢
急问一个WPF怎么绑定到全局结构变量(非全局数组变量)的有关问题
请问一个简单有关问题(多线程的)
(2) robot framework - variable file
请问一个sql语句转换成linq
FarPoint Spread WinForm(.Net 2.0)的应用。打开一个Excel后,如何获取该Excel里的页眉页脚呢
关于利用嘱托实现两个窗体互相调用方法
拼接字符串 显示空白间距解决办法
winform 程序卡死解决办法
小弟我旁边的日本人挺好玩的
wpf 选项卡带关闭按钮的TabControl,该怎么处理
一个需求比较特殊的c/s分布式程序,难道没有方法实现吗?该怎么解决
请教wpf password有只读属性吗