各位大哥大姐你们好,看看我的问题,谢谢你们(10分)

  • 主题发起人 主题发起人 lmxdoudou
  • 开始时间 开始时间
L

lmxdoudou

Unregistered / Unconfirmed
GUEST, unregistred user!
我照着你的葵花宝典中那篇delphi+word=办公自动化,调用word,程序运行后,第一次调用,没问题,第二次调用,就出现
如下错误:
project cffczx.exe raised exception class eoleexception with message 'RPC服务器不可用',process stopped,
use step or run t continue;
请问这是为什么?
 
加入下段代码
procedure TForm1.WordApplication1Quit(Sender: TObject);
begin
WordApplication1.Disconnect ;
end;
 
你好我这样做了,还是不行 为什么
 
估计是放掉了没有重新创建?
 
能把你代码传上来吗


 
可以 这是代码


try
wordapplication1.Connect;
except
application.MessageBox('不能新建WORD文档!确认是否安装WORD。', '提示:', mb_ok);
abort;
end;
if trim(richedit1.Text) = '' then
showmessage('请输入插入的内容!')
else
begin
wordapplication1.Visible := false;
worddocument1.Sections.Item(1).footers.Item(1).Range.Text := '第一页';
worddocument1.Range.Insertafter(trim(richedit1.Text) + #13);
worddocument1.Range.Insertafter('考试单位___________ ');
worddocument1.Range.Insertafter('考试时间___________' + #13);
worddocument1.Range.ParagraphFormat.Alignment := wdalignparagraphcenter;
WordDocument1.Tables.add(worddocument1.Range(sstart, send), NumRows, NumColumns, DefaultTableBehavior, AutoFitBehavior);
worddocument1.Range.Font.Size := 14;
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add(' select * from subject ');
ADOQuery2.Open;
****iindex := 0;
for i := 0 to 8 do
begin
****iindex := ****iindex + 1;
WordDocument1.Range.InsertAfter(inttostr(****iindex) + '、' + Adoquery2.FieldValues['SubjectContent'] + #13);
WordDocument1.Range.InsertAfter(inttostr(****iindex) + '答案、' + Adoquery2.FieldValues['Subjectresult'] + #13);
adoquery2.Next;
end;
end;
wordapplication1.Visible := true;
 
try
wordapplication1.Connect;
except
application.MessageBox('不能新建WORD文档!确认是否安装WORD。', '提示:', mb_ok);
abort;
end;
// if trim(richedit1.Text) = '' then
// showmessage('请输入插入的内容!')
// else
begin
wordapplication1.Visible := false;
////////// 再把这段加上

worddocument1.ConnectTo(wordapplication1.Documents.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam));


worddocument1.Sections.Item(1).footers.Item(1).Range.Text := '第一页';
worddocument1.Range.Insertafter(trim(richedit1.Text) + #13);
worddocument1.Range.Insertafter('考试单位___________ ');
worddocument1.Range.Insertafter('考试时间___________' + #13);
 
大哥 谢谢你了,我现在也不知道为什么了,我的问题还是那样,'RPC服务器不可用'。
RPC到底是干什么的。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
928
SUNSTONE的Delphi笔记
S
后退
顶部