- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C开发ActiveX控件及CAB打包
C# 开发ActiveX控件
新建-》项目-》Visual C#-》Windows-》Windows控件库,输入名称
解决方案资源管理器,单击选中默认用户控件UserControl1.cs,单击鼠标右键-》删除,单击项目名称,右键添加-》用户控件,输入控件名称Demo.cs;
单击项目名称,右键-》属性,应用程序-》程序集信息,选中“使程序集com可见”-》确定。生成-》配置选择“活动Debug”,拖动右侧滚动条至底部,选中“为Com Interop 注册”,配置选中“Release”,重复上述操作,保存项目。
工具-》创建Guid-》选择第四项-》New Guid-》Copy-》关闭窗口,打开Demo.cs代码页面,增加引用System.Runtime.InteropServices,同时Demo前添加一句[Guid(67CC9659-D63E-48a9-9E68-393FFC0C0161)]。
在Demo中添加用户定义的方法,例如:
public void ShowMessage(String msg)
{
if (msg != null)
{
MessageBox.Show(msg, 提示信息, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
}
}IObjectSafety 接口:IObjectSafety .cs,Demo实现IObjectSafety 接口。[ComImport, Guid(CB5BDC81-93C1-11CF-8F20-00805F2CD064)]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IObjectSafety
{
[PreserveSig]
void GetInterfacceSafyOptions(
int riid,
out int pdwSupportedOptions,
out int pdwEnabledOptions);
[PreserveSig]
void SetInterfaceSafetyOptions(
int riid,
int dwOptionsSetMask,
int dwEnabledOptions);
}
接口实现:
#region IObjectSafety 成员
public void GetInterfacceSafyOptions(int riid, out int pdwSupportedOptions, out int pdwEnabledOptions)
{
pdwSupportedOptions = 1;
pdwEnabledOptions = 2;
}
public void SetInterfaceSafetyOptions(int riid, int dwOptionsSetMask, int dwEnabledOptions)
{
throw new NotImplementedException();
}
#endregion
项目属性文件AssemblyInfo.cs条件
using System.Security;
using System.Security.Permissions;
[assembly: AllowPartiallyTrustedCallers()]
[assembly: ClassInterface(ClassInterfaceType.AutoDual)]
[assembly: SecurityPermission(SecurityAction.RequestMinimum,UnmanagedCode = true)]
单击项目名称,右键-》生成。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Te
您可能关注的文档
最近下载
- DL_T 267-2023 油浸式全密封卷铁心配电变压器使用技术条件.pdf VIP
- 一种新型的化纤打包机.pdf VIP
- 山东黄金集团招聘考试题库.pdf
- 贵州省黔西南州2024-2025学年七年级下学期期末语文试题(含答案).pdf VIP
- 环形混凝土电杆标准.pdf VIP
- 专项施工方案.docx VIP
- NB∕T 47018.4-2022 承压设备用焊接材料订货技术条件 第4部分:埋弧焊钢焊丝和焊剂.pdf
- 山西博大集团寿阳京鲁煤业有限责任公司兼并重组整合矿井地质报告.doc
- 贵州省黔西南州2024-2025学年七年级下学期期末考试语文试题(含答案).docx VIP
- 烟气脱硫废水处理系统培训课件.pptx VIP
文档评论(0)