Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Узнать, запущена ли программа из пакета MS Office

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

uses
   ComObj, ActiveX;

 function IsObjectActive(ClassName: string): Boolean;
 var
   ClassID: TCLSID;
   Unknown: IUnknown;
 begin
   try
     ClassID := ProgIDToClassID(ClassName);
     Result  := GetActiveObject(ClassID, nil, Unknown) = S_OK;
   except
     // raise; 
    Result := False;
   end;
 end;

 procedure TForm1.Button1Click(Sender: TObject);
 begin
   if IsObjectActive('Word.Application') then ShowMessage('Word is running !');
   if IsObjectActive('Excel.Application') then ShowMessage('Excel is running !');
   if IsObjectActive('Outlook.Application') then ShowMessage('Outlook is running !');
   if IsObjectActive('Access.Application') then ShowMessage('Access is running !');
   if IsObjectActive('Powerpoint.Application') then ShowMessage('Powerpoint is running !');
 end;
Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay