日期:2010-06-02  浏览次数:20364 次

  要操作Word,我们就需要Word的对象库文件“MSWORD.OLB”(word 2000为MSWORD9.OLB),通常安装了Office Word后,你就可以在office安装目录的Office10文件夹下面找到这个文件,当我们将这个文件引入到项目后,我们就可以在源码中使用各种操作函数来操作Word。具体做法是打开菜单栏中的项目>添加引用>浏览,在打开的“选择组件”对话框中找到MSWORD.OLB后按确定即可引入此对象库文件,vs.net将会自动将 库文件转化为DLL组件,这样我们只要在源码中创建该组件对象即可达到操作Word的目的!

在CS代码文件中对命名空间的应用,如:using Word;范例如下:
   
  using System;
  using System.Drawing;
  using System.Collections;
  using System.ComponentModel;
  using System.Windows.Forms;
  using Word;
  namespace ExamSecure
  {
   /// 
   /// ItemToDoc 的摘要说明。
   /// 
   public class ItemToDoc : System.Windows.Forms.Form
   {
    object strFileName;
    Object Nothing;
    Word.ApplicationClass myWordApp=new Word.ApplicationClass();
    Word.Document myWordDoc;
    string strContent="";
    private System.ComponentModel.Container components = null;
    public ItemToDoc()
    {
     //
     // Windows 窗体设计器支持所必需的
     //
     InitializeComponent();
     //
     // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
     //
    }
    [STAThread]
    static void Main() 
    {
     System.Windows.Forms.Application.Run(new ItemToDoc());
    }
    /// 
    /// 清理所有正在使用的资源。
    /// 
    protected override void Dispose( bool disposing )
    {
     if( disposing )
     {
      if(components != null)
      {
       components.Dispose();
      }
     }
     base.Dispose( disposing );
    }
    #region Windows Form Designer generated code
    /// 
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// 
    private void InitializeComponent()
    {
     // 
     // ItemToDoc
     // 
     this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
     this.ClientSize = new System.Drawing.Size(292, 273);
     this.Name = "ItemToDoc";
     this.Text = "ItemToDoc";
     this.Load += new System.EventHandler(this.ItemToDoc_Load);
  }
    #endregion
    private void ItemToDoc_Load(object sender, System.EventArgs e)
    {
     WriteFile();
    }
    private void WriteFile()
    {
    
     strFileName=System.Windows.Forms.Application.StartupPath+"\\试题库【"+GetRandomString()+"】.doc";
     Object Nothing=System.Reflection.Missing.Value;
     myWordDoc=myWordApp.Documents.Add(ref Nothing,ref Nothing,ref Nothing,ref Nothing);
     
     #region 将数据库中读取得数据写入到word文件中
     strContent="试题库\n\n\r";
     WriteFile(strContent);
     
     strContent="试题库";
     WriteFile(strContent);

   #endregion 
     
     //将WordDoc文档对象的内容保存为DOC文档
     myWordDoc.SaveAs(ref strFileName,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing);
     //关闭WordDoc文档对象
     myWordDoc.Close(ref Nothing, ref Nothing, ref Nothing);
     //关闭WordApp组件对象
     myWordApp.Quit(ref Nothing, ref Nothi