Olá,
estou desenvolvendo um cgi que abra o word e substitua strings por informações do banco de dados.
Estou fazendo em delphi, meu servidor é microsoft e ele não abre o word. O script abaixo funciona sem as linhas que estão entre comentários.
Ajuda!
unit teste;
interface
uses
SysUtils, Classes, HTTPApp, windows, OleServer, Word2000, Variants;
type
TWebModule1 = class(TWebModule)
WordApplication1: TWordApplication;
procedure WebModule1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
WebModule1: TWebModule1;
implementation
{$R *.DFM}
procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var ReturnString: string;
nome: olevariant;
no: olevariant;
begin
if Request.QueryFields.Values['rad']='first' then
ReturnString:='First Choice'
else ReturnString:='Second Choice';
copyfile(pchar('c:/a.doc'), pchar('c:/hu.doc'),true);
wordapplication1.Connect;
wordapplication1.Visible:=false;
nome:='c:/hu.doc';
no:=false;
//--------------------------------------
wordapplication1.Documents.OpenOld(nome, emptyparam, emptyparam, emptyparam, emptyparam, emptyparam, emptyparam, emptyparam, emptyparam, emptyparam);
wordapplication1.Documents.Close(no, emptyparam, emptyparam);
wordapplication1.Quit;
//---------------------------------------
Response.Content:='<HTML>'+'<BODY>'+'Hi! <P>'+'You picked '+ReturnString+'!'+ '</BODY>'+ '</HTML>';
end;
end.