news 2026/4/26 4:00:42

42、.NET与COM编程:从ActiveX控件到指针应用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
42、.NET与COM编程:从ActiveX控件到指针应用

.NET与COM编程:从ActiveX控件到指针应用

1. 引言

在编程领域,开发者往往希望有一个全新的开始,但对于大多数公司而言,丢弃过去编写的代码重新开始并非可行之选。过去十年间,众多开发组织在开发和购买COM组件及ActiveX控件上投入了大量资源。微软致力于确保这些遗留组件能在.NET应用程序中使用,同时也让.NET组件能被COM轻松调用。本文将深入探讨.NET对导入ActiveX控件和COM组件、将.NET类暴露给基于COM的应用程序以及直接调用Win32 API的支持,还会介绍C#指针和直接访问内存的关键字。

2. 导入ActiveX控件

ActiveX控件是COM组件,通常会被放置在窗体中,可能有也可能没有用户界面。微软开发OCX标准后,ActiveX控件革命兴起,开发者可以用VB构建ActiveX控件并在C++中使用,反之亦然。数千个这样的控件被开发、销售和使用,它们小巧、易于使用,是二进制重用的有效范例。

2.1 创建ActiveX控件

为了演示在.NET应用程序中使用经典ActiveX控件的能力,我们将先开发一个简单的四则运算计算器作为ActiveX控件,然后在C#应用程序中调用它。
-步骤
1. 打开VB 6,选择ActiveX控件作为新项目类型。由于该控件没有用户界面,将项目窗体尽可能缩小。
2. 右键单击UserControl1并选择“属性”,在属性窗口中将其重命名为Calculator。
3. 点击项目资源管理器中的“项目”,在属性窗口中将其重命名为CalcControl。立即保存项目,将文件和项目都命名为CalcCont

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:53:55

终极Windows内存优化指南:Mem Reduct高效清理技巧全解析

终极Windows内存优化指南:Mem Reduct高效清理技巧全解析 【免费下载链接】memreduct Lightweight real-time memory management application to monitor and clean system memory on your computer. 项目地址: https://gitcode.com/gh_mirrors/me/memreduct …

作者头像 李华
网站建设 2026/4/16 16:21:01

12、游戏开发:Windows 8 特色功能与多人游戏实现

游戏开发:Windows 8 特色功能与多人游戏实现 1. 游戏结束与重置 在游戏更新逻辑里,要在检查玩家是否存活的条件语句末尾添加一个 else 子句。若触发相应操作,就调用 ResetGame 函数。示例代码如下: if (_player->GetIsAlive()) {// ... } else {if (_tapAction-&g…

作者头像 李华
网站建设 2026/4/21 7:44:10

34、数据备份与 SQL Azure 数据库使用指南

数据备份与 SQL Azure 数据库使用指南 1. 数据备份流程 1.1 数据上传逻辑 在数据上传过程中,根据数据大小会有不同的处理方式。若输入数据小于 4 MB,代码会进行一个长顺序请求;若大于 4 MB,代码会调用辅助函数将数据分割并上传为块。以下是相关代码示例: queue.join(…

作者头像 李华
网站建设 2026/4/18 22:39:19

iOS激活锁绕过终极指南:AppleRa1n让设备重获新生

iOS激活锁绕过终极指南:AppleRa1n让设备重获新生 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 忘记Apple ID密码?二手设备被锁定?AppleRa1n为您提供专业的iOS激活…

作者头像 李华
网站建设 2026/4/23 12:42:31

TimesFM参数高效微调技术深度解析与实战应用

TimesFM参数高效微调技术深度解析与实战应用 【免费下载链接】timesfm TimesFM (Time Series Foundation Model) is a pretrained time-series foundation model developed by Google Research for time-series forecasting. 项目地址: https://gitcode.com/GitHub_Trending/…

作者头像 李华
网站建设 2026/4/18 12:08:18

OBS Spout2插件终极指南:实现无缝视频纹理共享

OBS Spout2插件终极指南:实现无缝视频纹理共享 【免费下载链接】obs-spout2-plugin A Plugin for OBS Studio to enable Spout2 (https://github.com/leadedge/Spout2) input / output 项目地址: https://gitcode.com/gh_mirrors/ob/obs-spout2-plugin OBS S…

作者头像 李华