今天闲来无聊研究了下 ActiveX插件开发,以前一直以为很牛逼,然后发现还是比较简单的东西..
首先: 在开始前 准备好 VS12开发工具,cabarc.exe 工具(注:这是 用来 将文件打包成cab的工具,cab包ie浏览器才会安装它,提供下载见文章最后)
开始:
1.新建一个Windows窗体控件库
2.新建用户控件
3.添加一个接口名为:IObjectSafety(此名固定用法)
添加的代码:(代码请勿改动)
1 using System; 2 using System.Runtime.InteropServices; 3 4 namespace MyFirstActiveX 5 { 6 [ComImport, GuidAttribute("CB5BDC81-93C1-11CF-8F20-00805F2CD064")] 7 [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] 8 public interface IObjectSafety 9 { 10 [PreserveSig] 11 int GetInterfaceSafetyOptions(ref Guid riid, [MarshalAs(UnmanagedType.U4)] ref int pdwSupportedOptions, [MarshalAs(UnmanagedType.U4)] ref int pdwEnabledOptions); 12 13 [PreserveSig()] 14 int SetInterfaceSafetyOptions(ref Guid riid, [MarshalAs(UnmanagedType.U4)] int dwOptionSetMask, [MarshalAs(UnmanagedType.U4)] int dwEnabledOptions); 15 } 16 }