📄 simple12.idl
字号:
// Simple12.idl : Simple12 的 IDL 源
//
// 此文件将由 MIDL 工具处理以
// 产生类型库(Simple12.tlb)和封送处理代码。
import "oaidl.idl";
import "ocidl.idl";
////////////////////// ICallBack 接口的IDL声明需要手工输入 /////////////////////////
[
object,
uuid(DB72DF86-70E9-4ABC-B2F8-5E04062D3B2E), // 这个 IID 可以用 GUDIGEN.EXE 产生
helpstring("ICallBack 接口"),
pointer_default(unique)
]
interface ICallBack : IUnknown{
// 接口函数可以手工输入
// 也可以在 ClassView 上,鼠标右键点接口名后在弹出菜单上,用Add Method输入
[helpstring("方法Fire_Result")] HRESULT Fire_Result([in] LONG nResult);
};
////////////////////////////////////////////////////////////////////////////////////
[
object,
uuid(DB72DF85-70E9-4ABC-B2F8-5E04062D3B2E),
helpstring("IEvent1 接口"),
pointer_default(unique)
]
interface IEvent1 : IUnknown{
[helpstring("方法Add")] HRESULT Add([in] LONG n1, [in] LONG n2);
[helpstring("方法Advise")] HRESULT Advise([in] ICallBack * pCallBack, [out] LONG* pdwCookie);
[helpstring("方法Unadvise")] HRESULT Unadvise([in] LONG dwCookie);
};
[
uuid(FBA1E0F0-49CD-4B77-B9B1-4DC066AF8A8E),
version(1.0),
helpstring("Simple12 1.0 类型库")
]
library Simple12Lib
{
importlib("stdole2.tlb");
[
uuid(53E00126-B1A0-4510-B9BC-75ED87CE2DB7),
helpstring("Event1 Class")
]
coclass Event1
{
[default] interface IEvent1;
[source, default] interface ICallBack; // 需要手工输入,据说 VB 使用的话,不能有 [source,default] 属性
};
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -