奇趣技术网 收藏本站
设为主页
商务合作
首页 新闻中心 行业动态 软件新闻 安全资讯 病毒预警 漏洞发布 操作系统 Dos Win9x Win2000 WinXP Win2003 WinVista Linux Unix
数据库 DB2 Access MSSQL MySQL Oracle Sybase 编程技术 ASP PHP JSP CGI/Perl XML .Net C/C++/C# VB VC Delphi Java 汇编
安全技术 安全教学 工具介绍 漏洞利用 病毒防范 入侵检测 防火墙 安全防范 汉化破解 攻击实例 加密解密 技术论坛
中华网络安全联盟 >> 程序开发 >> Delphi >> 在Delphi中使用CreateOleObject方法对WORD文件进行操作
程序开发
Asp
PHP
JSP
CGI/Perl
XML
.Net
C/C++/C#
Visual Basic
Visual C++
Delphi
Java
汇编语言
  • Delphi实现网页表单数

  • 用Delphi开发Web服务数

  • Delphi中利用钩子实现

  • 一个判断定文件是否为

  • 把Flash文件转换为Exe

  • 用Delphi实现文件下载

  • Delphi中保存图像列表

  • 基于Delphi的接口编程

  • 在Delphi中使用CreateOleObject方法对WORD文件进行操作
    字体:

    中华网络安全联盟    作者:佚名    来源:网络转载    时间:2006-3-22

    使用CreateOleObject方法对WORD文档操作具有先天所具备的优势,与delphi所提供的那些控件方式的访问相比,CreateOleObject方法距离WORD核心的操作“更近”,因为它直接使用OFFICE所提供的VBA语言对WORD文档的操作进行编程。

    以下是我在本机上所做的实验,机器软件配置如下:

    Windows XP+delphi7.0+OFFICE 2003

    这个程序很简单,在页面上放置了一个edit和一个button,每单击一次按钮,就会自动把edit中的内容添加在后台中的word文档中,程序关闭时文件自动保存在当前程序的主目录中。

    unit main;

    interface

    //如果要使用CreateOleObject的办法对WORD文档进行操作,应该在uses
    //语句中加入Comobj声明和WordXP声明
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Comobj, WordXP, Dialogs, StdCtrls;

    type
      TForm1 = class(TForm)
        Button1: TButton;
        Edit1: TEdit;
        procedure Button1Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
        procedure FormClose(Sender: TObject; var Action: TCloseAction);
    //    procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form1: TForm1;
      //把这两个变量声明为全局变量
      FWord: Variant;
      FDoc: Variant;

    implementation

    {$R *.dfm}

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    FWord.Selection.TypeParagraph;
    FWord.Selection.TypeText(Text := form1.Edit1.Text);
    end;


    procedure TForm1.FormCreate(Sender: TObject);
    begin
    //首先创建对象,如果出现异常就作出提示
    try
    FWord := CreateOleObject('Word.Application');
    //WORD程序的执行是否可见,值为False时程序在后台执行
    FWord.Visible := False;
    except
    ShowMessage('创建word对象失败!');
    Exit;
    end;

    //先在打开的Word中创建一个新的页面,然后在其中键入"Hello,"+回车+"World!"
    try
    FDoc := FWord.Documents.Add;
    FWord.Selection.TypeText(Text := 'Hello,');
    FWord.Selection.TypeParagraph;
    FWord.Selection.TypeText(Text := 'World! ');

    except
    on e: Exception do
    ShowMessage(e.Message);
    end;
    end;

    //在程序关闭时把文件内容保存到当前目录中,并以test.doc命名
    //同时关闭WORD程序
    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
    FDoc.SaveAs(ExtractFilePath(application.ExeName) +'test.doc');
    FWord.Quit;
    FWord := Unassigned;
    end;

    end.

    此外,对OFFICE其他文件的操作都比较类似,不在赘述。通过对WORD文件中更复杂的VBA宏的引用,这个方法还可以完成更复杂的文档操作。

    字体:
     
    设为主页 收藏本站 联系我们 友情连接 商务合作 网友留言
    Copyright©2006-2008 中华网络安全联盟 All rights reserved.