Office2000(2003) 下 outlook,word 的 com addin 之 delphi实现!(整理摸索)(3) 1. FriendlyName: 字符串类型,插件的名称,将在相应程序的COM加载对话框中看到。2. LoadBehavior: 双字节类型,决定插件将以什么形式被装载。当其值为0x03时,为应用程序装载时被自动装载(一般使用此值)、当其值为0x08时,为用户控制激活装载。
CSDN_Dev_Image_2004-2-182200490.jpg" align=baseline border=0>
下面,我给大家详细说明制作过程:
1,新建 active library,保存为 project1,这就是ProgID的前面部分2,新建com Object,在Class Name中填写 MyOutlookAddIn,这将是ProgID的后面部分,点一下Implemented Interface后面的List按钮。再点一下对话框中的Add Library按钮,选择“Program Files\Common Files\Designer”目录下的msaddndr.dll文件。然后在列表中找到msaddndr.dll里面的_IDTExtensibility2接口点击确定。现在Com AddIn部分已经完成,现在要在Outlook里面加一个CommandBar和两个按钮,并且让按钮响应用户自定义事件
3,创建一个新的Unit,主要新建一个TcommandBarButton的OleServer类以连接到CommandButton并响应事件,记得,一定要引用 office2000, Outlook2000单元。代码:如下定义部分TCommandBarButtonClick = procedure(const Ctrl: OleVariant; var CancelDefault: OleVariant) of Object;TCommandBarButton = class(TOleServer)private FIntf: CommandBarButton; FOnClick: TCommandBarButtonClick; function GetDefaultInterface: CommandBarButton; procedure SetOnClick(const Value: TCommandBarButtonClick);protected procedure InitServerData; override; procedure InvokeEvent(DispID: TDispID; var Params: TVariantArray); override;