Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как написать Outlook AddIn

Delphi , Интернет и Сети , Почтовый клиент

Как написать Outlook AddIn

Автор: http://www.swissdelphicenter.ch

{
  1.  Create an ActiveX-Library
  Save the project as e.g. "OLAddIn.dpr"

  2.Create an automation object
  Call the CoClass e.g. "AddIn"
  Save the Unit as "AddIn.pas"

  3.  Add to the uses clause
  - AddInDesignerObjects_TLB
  - Outlook_TLB

}



 procedure OnConnection(const Application: IDispatch; ConnectMode: ext_ConnectMode;
   const AddInInst: IDispatch; var custom: PSafeArray); safecall;
 procedure OnDisconnection(RemoveMode: ext_DisconnectMode; var custom:
   PSafeArray); safecall;
 procedure OnAddInsUpdate(var custom: PSafeArray); safecall;
 procedure OnStartupComplete(var custom: PSafeArray); safecall;
 procedure OnBeginShutdown(var custom: PSafeArray); safecall;

{  
  and complete the class by pressing Ctrl-Shft-C  

  4. Step  
  Register the COM-object with "run / register ActiveX Server"  
  Register the AddIn, so that the Addin will be recognized by Outlook  
  - Create a new key: HKEY_CURRENT_USER\Software\Microsoft\Office\Outlook\Addins\OLAddIn.AddIn  
  - create a DWOrd "LoadBehavior" with the value 3  

  5. 
  Compile the AddIn  
  Start Outllok  

  Sourcecode  

  *********************************************************************************  
}

library OLAddIn;

uses
  ComServ,
  OLAddIn_TLB in 'OLAddIn_TLB.pas',
  AddIn in 'AddIn.pas' {AddIn: CoClass};

exports
  DllGetClassObject,
  DllCanUnloadNow,
  DllRegisterServer,
  DllUnregisterServer;

{$R *.TLB}

{$R *.RES}

begin
end.

{
**********************************************************
**********************************************************
}

unit AddIn;

{$WARN SYMBOL_PLATFORM OFF}

interface

uses
  ComObj, ActiveX, OLAddIn_TLB, StdVcl, AddinDesignerObjects_TLB, Outlook_TLB;

type
  TAddIn = class(TAutoObject, IAddIn, IDTExtensibility2)
  protected
    { Protected declarations }
    procedure OnConnection(const Application: IDispatch; ConnectMode:
      ext_ConnectMode;
      const AddInInst: IDispatch; var custom: PSafeArray); safecall;
    procedure OnDisconnection(RemoveMode: ext_DisconnectMode; var custom:
      PSafeArray); safecall;
    procedure OnAddInsUpdate(var custom: PSafeArray); safecall;
    procedure OnStartupComplete(var custom: PSafeArray); safecall;
    procedure OnBeginShutdown(var custom: PSafeArray); safecall;
  end;

implementation

uses ComServ, Dialogs;

{ TAddIn }

procedure TAddIn.OnAddInsUpdate(var custom: PSafeArray);
begin

end;

procedure TAddIn.OnBeginShutdown(var custom: PSafeArray);
begin

end;

procedure TAddIn.OnConnection(const Application: IDispatch;
  ConnectMode: ext_ConnectMode; const AddInInst: IDispatch;
  var custom: PSafeArray);
begin
  // To show, that the AddIn has started just say anything
  ShowMessage('Das AddIn wurde gestartet');
end;

procedure TAddIn.OnDisconnection(RemoveMode: ext_DisconnectMode;
  var custom: PSafeArray);
begin

end;

procedure TAddIn.OnStartupComplete(var custom: PSafeArray);
begin

end;

initialization
  TAutoObjectFactory.Create(ComServer, TAddIn, Class_AddIn,
    ciMultiInstance, tmApartment);
end.

Пример создания добавки для Outlook с помощью Delphi:

Шаг 1: Создание библиотеки ActiveX Первый шаг - создать новый проект библиотеки ActiveX в Delphi и сохранить его как "OLAddIn.dpr".

Шаг 2: Создание объекта автоматизации Второй шаг - создать объект автоматизации, который будет использоваться для взаимодействия с Outlook. Это делается созданием нового модуля, называемого "AddIn.pas", и объявлением класса "TAddIn", который реализует интерфейсы IAddIn и IDTExtensibility2.

Шаг 3: Добавление использованных модулей Третий шаг - добавить необходимые использованные модули в модуль "AddIn.pas". Это включает в себя ComServ, OLAddIn_TLB, ActiveX и Outlook_TLB.

Шаг 4: Объявление процедур Четвертый шаг - объявить процедуры, которые будут вызываться Outlook при загрузке или разгрузке добавки. Эти процедуры включают:

  • OnConnection: Вызывается при загрузке добавки.
  • OnDisconnection: Вызывается при разгрузке добавки.
  • OnAddInsUpdate: Вызывается при обновлении добавок.
  • OnStartupComplete: Вызывается при завершении процесса запуска.
  • OnBeginShutdown: Вызывается при начале процесса остановки.

Шаг 5: Реализация процедур Пятый шаг - реализовать объявленные в шаге 4 процедуры. Например, процедура OnConnection может использоваться для инициализации добавки и отображения сообщения о том, что она запущена.

Шаг 6: Регистрация COM-объекта Шестой шаг - зарегистрировать COM-объект с помощью команды "run / register ActiveX Server". Это позволит Outlook обнаружить добавку.

Шаг 7: Скомпилирование и запуск В конце - скомпилировать добавку и запустить Outlook. Добавка должна теперь быть видна в панели инструментов Outlook. Замечание: код только пример, вам нужно его адаптировать к вашим потребностям и также убедиться, что у вас установлен Outlook на вашем компьютере.

В статье описывается процесс создания Outlook Add-In с помощью Delphi.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Почтовый клиент ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-10-24 20:01:31/0.0037720203399658/0