COM/OLE

GetActiveOleObject(ClassName: String) IDispatch

Метод возвращает ссылку на IDispatch интерфейс COM объекта.

Parameters:

ClassName (String) – Класс зарегистрированного COM объекта.

Return type:

IDispatch

Warning

Не реализовано

CreateOleObject(ClassName: String) IDispatch

Функция содает Ole объект от зарегистрированного в системе класса ClassName.

Parameters:

ClassName (String) – Имя класса OLE объекта.

Return type:

IDispatch

Пример подсчёта непрочитанных писем в папке Входящие:
<pascal>
  O := CreateOleObject('Outlook.Application');
  NameSpace := O.GetNameSpace('MAPI');
  InBox := NameSpace.GetDefaultFolder($00000006);
  n := 0;
  s := '';
  for i := 1 to InBox.Items.Count do
  begin
    Mail := InBox.Items.Item(i);
    if Mail.UnRead then
    begin inc(n);
      s := s + ' <' + Mail.SenderEmailAddress + '>' + ' EntryID = ' + Mail.EntryID + #13#10;
    end;
  end;
  ShowMessage('Непрочитанных писем в папке InBox: ' + VarToStr(n) + #13#10 + s);
  O.Quit;
</pascal>

Warning

Не реализовано

IEnumVariant

class IEnumVariant

Класс предоставляет возможность последовательно обойти все элементы коллекции OLE-объекта. Функционал аналогичен оператору For Each в VB, или классу Enumerator в JavaScript.

Подробнее о методах можно узнать в MSDN

Для всех методов: возвращаемое значение равное нулю означает успешное выполнение.

Warning

Не поддерживается в Application Server

Skip(Cnt: Integer) Integer

Пропускает заданное количество элементов.

Parameters:

Cnt (Integer) – Число элементов, которые необходимо пропустить.

Return type:

Integer

Reset() Integer

Сбрасывает перебор элементов на начало коллекции.

Return type:

Integer

Next(ScCnt: Integer; Item: IDispatch; ScrCnt: Integer) Integer

Метод извлекает следующий элемент коллекции в параметр Item. Параметры ScCnt и ScrCnt - соответственно: сколько нужно извлечь элементов и сколько было фактически извлечено. Настоятельно рекомендуется всегда извлекать последовательно по одному элементу.

Parameters:
  • ScCnt (Integer) – Количество элементов, которые необходимо извлечь.

  • Item (IDispatch) – Извлечённый элемент.

  • ScrCnt (Integer) – Количество фактически извлечённых элементов.

Return type:

Integer

TOleContainer

class TOleContainer

Компонент является контейнером OLE объектов. В нем можно создать и отобразить экземпляр Microsoft Office Word, Excel.

Warning

Не поддерживается в Application Server

CreateObjectFromFile(FileName: String; Iconic: Boolean)

Создает новый OLE объект из файла. Определяет тип OLE класса по имени файла. Параметр Iconic определяет как будет созда объект, как иконка или как встраиваемый контрол.

Parameters:
  • FileName (string) – Имя файла

  • Iconic (Boolean) – Создать свёрнутым

CreateObject(OleClassName:  String; Iconic: Boolean)

Создает новый OLE объект по имени класса объекта. Параметр Iconic определяет как будет создан объект, как иконка или как встраиваемый контрол.

Parameters:
  • OleClassName (string) – Имя класса

  • Iconic (Boolean) – Создать свёрнутым

DoVerb(Verb: Integer)

Запрашивает OLE контрол выполнить некоторые действия. Метод следует вызвать только когда форма видима, инача будет возбуждено Метод следует вызвать только когда форма видима, иначе будет возбуждено исключение, на попытку установить фокус на OleContainer. Объявлены следующие константы:

  • ovShow

  • ovOpen

  • ovHide

  • ovUIActivate

  • ovInPlaceActivate

  • ovDiscardUndoState

  • ovPrimary (действие по умолчнию)

Parameters:

Verb (Integer) – Код команды