Word no Delphi
[size=18:b115abbaef][/size:b115abbaef]Como faço para abrir um documento do WORD 2000 e visualiza-lo dentro do meu aplicativo?
Grato,
Mardônio Cavalcante
PS:Os arquivos do WORD contem imagens.
Grato,
Mardônio Cavalcante
PS:Os arquivos do WORD contem imagens.
Mardônio
Curtidas 0
Respostas
Aroldo Zanela
20/08/2003
Colega,
Exemplo genérico:
Não esqueça de adicionar ComObj e ActiveX na lista de uses do seu formulário.
Exemplo genérico:
function TForm1.CrieObjeto(const ClasseNome: String): IDispatch; var Classifique_Id: TGUID; Desconhecido: IUnknown; begin Classifique_ID:=ProgIdToClassId(ClasseNome); if Succeeded(GetActiveObject(Classifique_ID, nil, Desconhecido)) then OleCheck(desconhecido.QueryInterface(Idispatch, Result)) else Result:=CreateOleObject(ClasseNome); end; procedure TForm1.btnContratoClick(Sender: TObject); var Doc: Variant; begin Word2k := CrieObjeto(´Word.Application´); Doc := Word2k.Documents.Open(´c:\dados\factoring\contrato de factoring.doc´); Word2k.Visible := true;
Não esqueça de adicionar ComObj e ActiveX na lista de uses do seu formulário.
GOSTEI 0
Mardônio
20/08/2003
OK !!! Vou tentar... e muito obrigado.
GOSTEI 0
Albertocrosa
20/08/2003
:D segui todo op código mas não consegui, ele dá dois erros:
undeclared identifier: ´crieobjeto´ e tb
undeclared identifier: ´word2k´
uso windows 98 e Windows XP, gostaria de saber sepoderia me ajudar :?:
undeclared identifier: ´crieobjeto´ e tb
undeclared identifier: ´word2k´
uso windows 98 e Windows XP, gostaria de saber sepoderia me ajudar :?:
GOSTEI 0
Aroldo Zanela
20/08/2003
Colega,
A função CrieObjeto está no código abaixo e deve ser declarada na seção Interface do fomulário, a varável word2k deve ser declara local do formulário:
A função CrieObjeto está no código abaixo e deve ser declarada na seção Interface do fomulário, a varável word2k deve ser declara local do formulário:
interface
{....}
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
function CrieObjeto(const ClasseNome: String): IDispatch; // declaração
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
word2K: Variant; // declaração
implementation
function TForm1.CrieObjeto(const ClasseNome: String): IDispatch;
var Classifique_Id: TGUID;
Desconhecido: IUnknown;
begin
Classifique_ID:=ProgIdToClassId(ClasseNome);
if Succeeded(GetActiveObject(Classifique_ID, nil, Desconhecido)) then
OleCheck(desconhecido.QueryInterface(Idispatch, Result))
else
Result:=CreateOleObject(ClasseNome);
end;
procedure TForm1.btnContratoClick(Sender: TObject);
var Doc: Variant;
begin
Word2k := CrieObjeto(´Word.Application´);
Doc := Word2k.Documents.Open(´c:\dados\factoring\contrato de factoring.doc´);
Word2k.Visible := true;
GOSTEI 0