如何通过server组件调用word文档?

解决方案 »

  1.   

    Delphi程序打开Word文稿[/b]格式:WordDocuments.Open(FileName,ConfirmConversions,ReadOnly,PassWordDocument,PasswordTemplate,Revent,WritePasswordDocument,WritePassWordTemplate,Format,Encoding,Visible)FileName: 文档名(包含路径)Confirmconversions: 是否显示文件转换对话框ReadOnly: 是否以只读方式打开文档AddToRecentFiles: 是否将文件添加到"文件"菜单底部的最近使用文件列表中PassWordDocument: 打开此文档时所需要的密码PasswordTemplate: 打开此模板时所需要的密码Revert: 如果文档已经,是否重新打开文档WritePasswordDocument: 保存对文档更改时所需要的密码WritePasswordTemplate: 保存对模板进行更改时所需要的密码Format: 打开文档时所需使用的文件转换器Encoding: 所使用的文档代码页Visible: 打开文档的窗口是否可见举例:Doc_Handle:=Word_Ole.Documents.open(FileName:=Doc_File,ReadOnly:=False,AddToRecentFiles:=False);
      

  2.   

    Delphi程序保存Word文稿[/b]格式:WordDocuments.SaveAs(FileName, FileFormat, LockComments, Password,AddToRecentFiles, WritePassword, ReadOnlyRecommended,EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData,SaveAsAOCELetter)FileName: 文件名。默认为当前文件夹和文件名。FileFormat 文档保存的格式。LockComments 如果为 True,则此文档只允许进行批注。Password 打开文档时的口令。AddToRecentFiles 如果为True,则将文档添至"文件"菜单中最近使用的文档列表中。WritePassword 保存对文档的修改所需的口令。ReadOnlyRecommended 如果为 True,在每次打开文档时,Word 将建议用户采用只读方式。EmbedTrueTypeFonts 如果为 True,则将文档与 TrueType 字体一起保存。SaveNativePictureFormat 如果为 True,则从其他系统平台(例如 Macintosh)导入的图形仅保存其 Windows 版本。SaveFormsData 如果为 True,则将窗体中用户输入的数据存为一条数据记录。SaveAsAOCELetter 如果文档包含一个附加,当此属性值为 True 时,将文档存为一篇 AOCE 信笺(同时保存邮件)。举例:Word_Ole.Documents.SaveAs(FileName:=Doc_File,FileFormat=wdFormatDocument,AddToRecentFiles=False);
      

  3.   

    例子:
      打开word文件。
        procedure TfjfsglForm.SpeedButton4Click(Sender: TObject);
        var
        MSWord: Variant;
        str:string; 
        begin
          if trim(DataModule1.adoquery27.fieldbyname('fjmc').asstring)<>'' then
          begin
            str:=trim(DataModule1.ADOQuery27.fieldbyname('fjmc').AsString);
            MSWord:= CreateOLEObject('Word.Application');//
            MSWord.Documents.Open('d:\Program Files\Common Files\Sfa\'+str, True);//
            MSWord.Visible:=1;//
            str:='';
            MSWord.ActiveDocument.Range(0, 0);//
            MSWord.ActiveDocument.Range.InsertAfter(str);//?úWord?D???ó×?·?'Title'
            MSWord.ActiveDocument.Range.InsertParagraphAfter;
          end
          else
          showmessage('');
        end;