| Код | uses ..., Registry;
function IsMicrosoftWordInstalled: Boolean; var Reg: TRegistry; S: string; begin Reg := TRegistry.Create; with Reg do begin RootKey := HKEY_CLASSES_ROOT; Result := KeyExists('Word.Application'); Free; end; end;
|
--------------------------------------------------------------------------------
| Код | function MSWordIsInstalled: Boolean; begin Result := AppIsInstalled('Word.Application'); end;
function AppIsInstalled(strOLEObject: string): Boolean; var ClassID: TCLSID; begin Result := (CLSIDFromProgID(PWideChar(WideString(strOLEObject)), ClassID) = S_OK) end;
|
--------------------------------------------------------------------------------
Как определить установлен ли на компьютере Word, запустить его и загрузить в него текст из программы?
Пример:
| Код | var MsWord: Variant; ... try // Если Word уже запущен MsWord := GetActiveOleObject('Word.Application'); // Взять ссылку на запущенный OLE объект except try // Word не запущен, запустить MsWord := CreateOleObject('Word.Application'); // Создать ссылку на зарегистрированный OLE объект MsWord.Visible := True; except ShowMessage('Не могу запустить Microsoft Word'); Exit; end; end; end; ... MSWord.Documents.Add; // Создать новый документ MsWord.Selection.Font.Bold := True; // Установить жирный шрифт MsWord.Selection.Font.Size := 12; // установить 12 кегль MsWord.Selection.TypeText('Текст');
|
|