首页
学习
活动
专区
工具
TVP
发布

c#中开发ActiveX的学习笔记

1.为什么要用ActiveX? 网页本身的功能是有限的,要想实现一些网页本身不支持的功能,比如:网页上的p2p视频播放,就得靠ActiveX这种古老的技术。 2.c#能开发ActiveX吗?...来注册该dll),但是c#能开发com组件,activeX控件本质上讲跟com是一类技术,所以用c#开发"能够让网页调用的com类库"还是可行的。...开发的(伪)"ActiveX"控件并非纯正的ocx,所以只能用RegAsm.Exe xxx.dll来进行程序集的注册,这里要注意一点:在开发机上,项目编译后vs.net会自动将bin\debug\xxx.dll...后话:c#开发的东西是运行于.net 框架之上的,就好比java开发的东西必须要java runtime才能运行一样,利用本文方法开发出来的dll也必须要安装.net框架才能跑起来,幸好最新的win7中已经集成了...(可以参考我的另一篇重温delphi之:如何快速开发原生ActiveX控件) 示例源代码下载:http://files.cnblogs.com/yjmyzz/ActiveXDemo.rar

1.4K50
您找到你想要的搜索结果了吗?
是的
没有找到

.NET实现之(ActiveX插件开发)

OLE(对象连接与嵌入)、COM(组件对象模型)之类的概念,但是ActiveX插件在开发上有很高的技术要求,虽然.NET为我们封装了很好的实现途径,但是我们也总不能停留在,知自然而不知其所以然的层面上;...,大家都去遵守这个约定,才能使不同厂商生产的组件互相调用;而ActiveX插件就是一个COM组件,在早期的开发中对COM的开发是一种望而生畏的感觉,也许我们做.NET开发的程序的感觉开发组件DLL可能并没有多大难度...; 由于.NET开发出来的东西都是属于托管的,所以不是正真意义上的二进制标准,这就牵扯到.NET平台调用的技术P/Invoke和互操作Interop技术,但是我们不了解也没关系,这不影响我们开发ActiveX...,我们开发ActiveX插件要被浏览器这么一个大强的复合文档程序加载和使用的,所以我们得将托管的组件包装成非托管的等价的COM组件才行,.NET提供了CCW(COM可调用包装)的机制,将我们的ActiveX...插件通过中间转换一下就可以使用了,理论的东西我就到此结束,我们开始动手做一个ActiveX插件吧;先看一下ActiveX插件的运行图: 1: 这是系统在运行过程中要经历的过程调用步骤,有助于我们下面的开发讲解

69710

MFC ActiveX (ocx)控件的开发

ActiveX控件提供的这些功能使得对其的使用将是非常方便的。本文下面即以MFC为工 具对ActiveX控件的开发进行介绍。 一、创建项目 1.打开VS2008新建MFC项目。...CBrush::FromHandle((HBRUSH)GetStockObject(WHITE_BRUSH))); pdc->Ellipse(rcBounds); 也就是在控件上画了一个椭圆, 实际控件开发中可以根据功能需要修改重写这个函数来...CActiveXDemoCtrlPropPage 是属性页类,这个类实现了一个在开发时设定控件属性的对话 框。...2.方法 方法就是控件开放给用户使用的一些功能函数,类似于C++的类函数。开发人员可以提供自定义功能。 如下图所示我们添加一个方法Start(),其他默认。 ? ?...3.事件 ACTIVEX通过事件通知容器控件上发生了某些事情。将控件开发人员的某一特定操作识别为事件。 如下图所示,我们添加事件,添加事件顺序按照如图所示。

5.4K80

.Net魔法堂:史上最全的ActiveX开发教程——ActiveX与JS间交互篇

一、前言                             经过上几篇的学习,现在我们已经掌握了ActiveX的整个开发过程,但要发挥ActiveX的真正威力,必须依靠JS。下面一起来学习吧!...实现COM类`IOleClientSite`   C# [ComImport, Guid("00000118-0000-0000-C000-000000000046"), InterfaceType...实现COM类`IOleContainer`   C# [ComImport, Guid("0000011B-0000-0000-C000-000000000046"), InterfaceTypeAttribute...若在IE9下无法加载ActiveX控件    检查是否为64位的IE9。32位的ActiveX控件不能在64位的IE上使用。...(通过“任务管理器”查看进程名称,若为浏览器进程名称后跟32就是32位的) 六、总结   《.Net魔法堂:史上最全的ActiveX开发教程》系列总算整理完了,起个博眼球的标题,希望系列的内容不会让大家失望啦

2.1K100

.Net魔法堂:史上最全的ActiveX开发教程——开发

风险,当用ActiveX传输上百兆的文件时,会对浏览器造成哪些影响;团队中没有类似解决方案的经验供借鉴。解决方法:前期对主要功能进行快速原型设计、开发、验证和总结。  ...本系列将记录从开发、部署、更新、卸载到ActiveX与JS间的交互的.Net开发ActiveX全过程。...由于之前学习如何使用.Net开发ActiveX时,查找了不少文档,经过两天的东拼西凑后才掌握了整个开发过程,现在整理成系列以供日后查阅。   下面我们一起按部就班写ActiveX吧!...开发IObjectSafety接口      为了让ActiveX控件获得客户端的信任,用户控件必须实现`IObjectSafety`接口,并且下面的代码是固定的(GUID也不能变) [ComImport...三、总结                                       现在我们已经掌握开发ActiveX的第一步了,接下来请期待《.Net魔法堂:史上最全的ActiveX开发教程——发布篇

1.1K70

.Net魔法堂:史上最全的ActiveX开发教程——发布篇

一、 前言                                  接着上一篇《.Net魔法堂:史上最全的ActiveX开发教程——开发篇》,本篇讲述如何发布我们的ActiveX。...打包    C#开发Activex不像`OCX`那样直接通过`regsvr32.exe`注册,而采用两种方式发布使其运行在浏览器上。 1. ...制作cer证书     使用makecert.exe工具生成cer证书(工具在`C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin`) cmd命令 makecert...(可选项)将cer证书转换为spc证书     使用cert2spc.exe工具(工具在`C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin`) cmd...三、总结                                 这时ActiveX的发布工作已经完成,接下来请期待《.Net魔法堂:史上最全的ActiveX开发教程——部署篇》吧!

1.2K60

django开发时遇到问题的正确求助姿势

一些学习者跟随教程顺利地完成了个人博客的搭建,但一直以来也不断地收到读者的评论留言、QQ 留言、邮件等求助信息,他们被开发中的一些问题卡主了,并且不知道该如何解决。...求助搜索引擎 开发过程中不可避免的会遇到很多问题,这时候要善于利用社区和搜索引擎来帮助自己解决问题。...在这里分享一下我遇到问题通常是如何求助的。 首先最重要的一点就是要抛弃百度。从我个人经验来看,django 开发的大部分问题很难在百度搜到答案。...求助开发者问答社区 不知道 stackoverflow 的开发者不是一个好的开发者,有一句话叫面向 stackoverflow 编程,甚至还有人出版从如何 stackoverflow copy 代码到项目上线的过程...求助有经验的开发者 如果你使用了以上方法任然无法获得问题的解决方案,那说明你这个问题有一定挑战性了。

90880

.Net魔法堂:史上最全的ActiveX开发教程——部署篇

一、前言                                   接《.Net魔法堂:史上最全的ActiveX开发教程——发布篇》,后我们继续来部署吧!...二、 挽起衣袖来部署                               ActiveX的部署其实就是客户端安装ActiveX组件,对未签名和已签名的ActiveX,分别有对应的部署方式。...部署未签名的ActiveX   未签名的ActiveX控件不受浏览器端信任,默认是不被允许安装的   1. 将网站加入 **可信站点**   2. ...在“可信站点”和“Internet”下的 **自定义级别** 中确认“对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本”项设置为“启用”,“下载未签名的ActiveX控件”项设      置为...接下来请期待《.Net魔法堂:史上最全的ActiveX开发教程——自动更新篇》吧!

86950

.Net魔法堂:史上最全的ActiveX开发教程——自动更新、卸载篇

ActiveX组件的自动更新同样也继承了这一优点。下面我们一起来了解吧! 二、二话不说更新ActiveX                     1....设置ActiveX控件项目的程序集版本号、文件版本号   打开项目属性->程序集信息 ? 2. 设置安装程序的版本号(msi文件的版本号)   打开项目属性 ? 3....在 HKEY_CLASSES_ROOT下创建 CLSID/{ActiveX控件的GUID}/InstalledVersion;    在 InstalledVersion 下新建字符串值,设置 Value...在安装msi文件时,会对比ActiveX控件的版本号,若版本号较旧,则安装失败;较新则继续安装。...接下来请期待《.Net魔法堂:史上最全的ActiveX开发教程——ActiveX与JS间交互篇》吧!

85780

Vscode 搭建 C C++ 开发环境

文章目录 序 Vscode — 编辑器 mingw64 — 编译器 插件支持 .vscode 配置文件 c_cpp_properties.json launch.json tasks.json 环境验证...将士出征,怎能没有一把利器,本文基于 VSC 搭建 C++ 开发环境 序 相信多数计算机专业的同学都和我一样,步入大学首先要学习的就是 C 语言。...于是,历经 CodeBlocks、DevC++、VC++6.0 等编辑器后,我找到了致胜的法宝,今天的主角——VScode,这款工具在之前的博文中就有过推荐,点我直达 下面我们来一起配置下 C++ 的开发环境...\Program Files 文件夹下 添加环境变量 Path ,系统->关于->高级系统设置 编辑 Path 变量 加入 C:\Program Files\mingw64\bin,然后一路确定下去...C++: gcc.exe 生成活动文件",//任务名称 "command": "C:\\Program Files\\mingw64\\bin\\gcc.exe",//本地编译器路径

3.3K20

.NET实现之(部署ActiveX控件—简)

本人的“.NET实现之(ActiveX插件开发)”一文中介绍了在.NET平台下开发ActiveX控件的方法,但是没有介绍怎么部署开发好的ActiveX插件,所以今天就来弥补这个空缺; 由于ActiveX...插件属于早期的COM原理技术,在COM刚出来的时候,它的技术复杂度是每个C++程序员高不可攀的,本人认为非常的复杂,虽然在开发的时候不是认为不是很复杂,我所说的复杂是在遇到技术问题的时候是否能继续下去,...是否当你的组件部署到客户机器上的时候出现问题能很快的解决,这才是自其然而自其所以然;对自己开发的东西能了如指掌,要想达到这样一个高度非常的不容易,所以本人认为COM之复杂;[王清培版权所有,转载请给出署名...] 其实我们在.NET平台上面开发ActiveX插件是很简单的,部署ActiveX就跟简单了,ActiveX插件属于COM组件原理,它的存在必须要在注册表中备案,在使用的时候才能成功的搜索到,所以我们在安装...ActiveX插件的时候,要注意注册到本机;如果对ActiveX插件原理不太清楚的朋友请看本人的“.NET实现之(ActiveX插件开发)”一文,里面很详细的介绍了相关ActiveX插件的原理; 1:

51320
领券