有一word模板,是.dot的,里面有几个域,我要在delphi中对这几个域传值,该怎么做?比如域名叫i,j,k等....
Var
    WordApp: Variant;// 创建 WORD时所用
    DocApp:Variant;
begin
   try
       // 1. 建立 OleObject,连接 word
       WordApp:=CreateOleObject('word.Application');
        // 2. 建立 Word的新文件
        WordApp.Visible :=True;
        WordApp.Activate;
然后该怎么做呢?

解决方案 »

  1.   

    var
      WordApplication1:TWordApplication;
      WordDocument1:TWordDocument;
      FileName: OleVariant;
    begin
      try  //异常保护,如果下面代码出错,那么执行except下代码
        WordApplication1:=TWordApplication.Create(Self); //动态创建WordApplication对象
        WordDocument1:=TWordDocument.Create(Self);  //动态创建WordDocument对象,表示一个doc文档    WordApplication1.Connect; //把word当成com服务器,本程序为com客户端,启动word
        WordApplication1.Visible:=False; //启动的word窗口不可见
        FileName:=path; //doc文件的路径
        
        //打开指向FileName的doc文件
        WordApplication1.Documents.Open(FileName,
                                        EmptyParam,EmptyParam,EmptyParam,
                                        EmptyParam,EmptyParam,EmptyParam,
                                        EmptyParam,EmptyParam,EmptyParam,
                                        EmptyParam,EmptyParam);
        WordDocument1.ConnectTo(WordApplication1.ActiveDocument); //置这个doc文档为word启动后的活动文档
    end;这个是打开文档。更多的,你查资料。
      

  2.   

    %Delphi7%\Demos\ActiveX\OleAuto\SrvComp\Word 中有示例,可以参考。注意:它用的是WORD97,如果你的不是,需要修改一下uses部分。