Olá, o OpenOffice trabalha sem problemas com o Delphi - tenho várias aplicações que fazem interface com o OpenOffice. Inclusive, eu particularmente acho a API bem mais completa e mais intuitiva que o do MS-Office.
Um exemplo de código que converte um DOC em um TXT: var ServiceManager, CoreReflection, StarDesktop, Document: Variant; uses ComObj, Variants; begin ServiceManager := CreateOleObject('com.sun.star.ServiceManager'); StarDesktop := ServiceManager.createInstance('com.sun.star.frame.Desktop'); CoreReflection := ServiceManager.createInstance('com.sun.star.reflection.CoreReflection'); ConverteDOC( Diretorio + NomeArquivo ); end; procedure ConverteDOC( sDocument: string = '' ); var PropertyValue, Params : variant; DestFileName : ShortString; begin if sDocument = '' then ShowMessage('Document name must be provided') else begin if not FileExists( sDocument ) then begin ShowMessage(sDocument+' not found'); Abort; end; sDocument := StrTran( sDocument, '\', '/' ); sDocument := 'file:///' + sDocument; end; DestFilename := ChangeFileExt( sDocument, '.txt' ); { Exemplo de como criar um array vazio } Params := VarArrayCreate( [ 0, -1 ], varVariant ); Document := StarDesktop.LoadComponentFromURL( sDocument, '_blank', 0, Params); Params := unAssigned; { Exemplo de como criar um array com um objeto e como associar valor a ele } CoreReflection .forName('com.sun.star.beans.PropertyValue') .createObject(PropertyValue); PropertyValue.Name := 'FilterName'; PropertyValue.Value := 'Text'; Params := VarArrayCreate([0, 0], varVariant); Params[ 0 ] := PropertyValue; Document.StoreAsURL( DestFileName, Params ); Sleep( 1000 ); Document.close(true); PropertyValue := UnAssigned; Params := UnAssigned; Document := UnAssigned; end; Boa Sorte, Josir. ------------- Ola a todos! Gostaria de saber se os componentes p/ automação do Delphi com o MS Office, também valem pra StarOffice, OpenOffice, Lotus, etc... Att, [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> <*> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages <*> Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html