精华内容
下载资源
问答
  • windows服务调用程序或...需要做以下修改,属于权限问题。调用不到Office注册组件 在DCOM配置中,找到对应的office相关组件 如何找到DCOM配置,请查看另一篇博文:https://blog.csdn.net/baidu_27474941/articl...

    windows服务调用程序或部署在IIS网站的程序出现 Mcrosoft.Office.Interop.Word.Documents.Add 返回为null

    需要做以下修改,属于权限问题。调用不到Office注册组件

    在DCOM配置中,找到对应的office相关组件

    如何找到DCOM配置,请查看另一篇博文:https://blog.csdn.net/baidu_27474941/article/details/83268468

    解决方案一

    1. 单击安全选项卡。验证使用默认的访问权限使用默认的启动权限已选中,确保当前程序用户有权限访问。若是IIS访问权限问题,则自定义->编辑->添加ASP.NET账户和IUSER_计算机名
      * 这些帐户仅在计算机上安装有 IIS 的情况下才存在。 
    2. 单击标识选项卡,然后选择交互式用户
    3. 单击确定,关闭属性对话框并返回主应用程序列表对话框。

    解决方案二:

    跟环境有关系.net框架有吗office版本问题操作系统位数问题dll版本问题DCOM注册了吗

    解决方案三:
    建议还是换个Aspose.word之类的不依赖系统环境的第三方dll去操作word文件

    展开全文
  • oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 第一章 Oracle入门 一、 数据库概述 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。简单来说是本身可视...
  • windows print功能详解

    2020-09-28 15:46:38
    Framework的打印功能都以组件的方式提供,为程序员提供了很大的方便,但是这几个组件的使用还是很复杂的,有必要解释一下. 打印操作通常包括以下四个功能 打印设置 设置打印机的一些参数比如更改打印机驱动程序等 ...

    在windows应用程序中文档的打印是一项非常重要的功能,在以前一直是一个非常复杂的工作,Microsoft .net
    Framework的打印功能都以组件的方式提供,为程序员提供了很大的方便,但是这几个组件的使用还是很复杂的,有必要解释一下.

    • 打印操作通常包括以下四个功能
      1. 打印设置 设置打印机的一些参数比如更改打印机驱动程序等
      2. 页面设置 设置页面大小纸张类型等
      3. 打印预览 类似于word中的打印预览
      4. 打印

    实现打印功能的核心是PrintDocument类这个类属于System.Drawing.Printing名字空间这个类封装了当前的打印设置页面设置以及所有的与打印有关的事件和方法

    这个类包括以下几个属性 事件 和方法
    

    1、PrinterSettings 属性
    存放打印机的设置信息这个属性不需要程序员设置因为它是由打印对话框获取的
    2、PrintCountroller 属性
    控制打印过程
    3、DefaultPageSettings 属性
    存放页面设置信息 打印纸大小方向等也不需要程序员设置因为它是由页面设置对话框获取的
    4、DocumentName 属性
    指定文档名称,出现在打印机状态窗口中

    1. BeginPrint事件
      在打印之前发出
    2. PrintPage事件
      每打印一页时发出,事件接受一个PrintPageEventArgs参数该参数封装了打印相关的信息
      PrintPageEventArgs参数有很多重要的属性
      1 Cancel 取消打印 2 Graphics 页面的绘图对象 3 HasMorePages 是否还有要打印的页面
      Print 方法 该方法没有参数 调用它将按照当前设置开始打印 若实现打印功能首先构造PrintDocument对象添加打印事件
    PrintDocument printDocument;
    private void InitializeComponent( )
    {
        
        printDocument=new PrintDocument( );
        printDocument.PrintPage += new PrintPageEventHandler ( this.printDocument_PrintPage );
        
    }
    

    实现打印事件功能 打印和绘图类似都是调用Graphics 类的方法进行画图
    不同的是一个在显示器上一个在打印纸上并且打印要进行一些复杂的计算如换行 分页等.

    private void printDocument_PrintPage( object sender,PrintPageEventArgs e )
    {
        Graphics g = e.Graphics;//获得绘图对象
        float linesPerPage = 0;//页面的行号
        float yPosition = 0;//绘制字符串的纵向位置
        int count = 0;    //行计数器
        float leftMargin = e.MarginBounds.Left;//左边距
        float topMargin = e.MarginBounds.Top; //上边距
        string line = null;//行字符串
        Font printFont = this.textBox.Font;/*当前的打印字体*/
        SolidBrush myBrush = new SolidBrush( Color.Black ); //刷子
        linesPerPage = e.MarginBounds.Height /printFont.GetHeight( g );    //每页可打印的行数
    //逐行的循环打印一页    
    
    while( count < linesPerPage && ( ( line=lineReader.ReadLine( ) ) != null ) )    
    {
        yPosition = topMargin + ( count * printFont.GetHeight( g ) );
        g.DrawString( line, printFont, myBrush, leftMargin, yPosition, new StringFormat( ) );
        count++;
    }
    

    如果本页打印完成而line不为空说明还有没完成的页面这将触发下一次的打印事件在下一次的打印中lineReader会自动读取上次没有打印完的内容因为lineReader是这个打印方法外的类的成员它可以记录当前读取的位置

        if( line != null )        
           e.HasMorePages = true;
        else       
           e.HasMorePages = false;
    }
    
    打印设置,构造打印对话框 将对话框中设置的Document属性赋给printDocument这样会将用户的设置自动保存到
    
    printDocument的PrinterSettings属性中
    protected  void FileMenuItem_PrintSet_Click( object sender,EventArgs e )
    {
        PrintDialog printDialog = new PrintDialog( );
        printDialog.Document = printDocument;
        printDialog.ShowDialog( );
    }
    
    页面设置和打印预览与打印设置原理相同都是构造对话框将用户在对话框中的设置保存到相应的类的属性中
    
    protected  void FileMenuItem_PageSet_Click( object sender,EventArgs e )
    {
        PageSetupDialog pageSetupDialog = new PageSetupDialog( );
        pageSetupDialog.Document = printDocument;
        pageSetupDialog.ShowDialog( );
    }
    
    打印预览
    
    protected void FileMenuItem_PrintView_Click( object sender,EventArgs e )
    {
        PrintPreviewDialog printPreviewDialog = new PrintPreviewDialog( );
        printPreviewDialog.Document = printDocument;
        lineReader = new StringReader( textBox.Text );
        try      
        {
            printPreviewDialog.ShowDialog( );
        }
        catch( Exception excep )    
        {
            MessageBox.Show( excep.Message, "打印出错", MessageBoxButtons.OK, MessageBoxIcon.Error );
        }
    }
    

    打印就可以直接调用printDocument的Print( )方法因为用户可能在打印之前还要再更改打印设置所以在这里再次显示打印设置对话框

    protected void FileMenuItem_Print_Click( object sender,EventArgs e )  
    {
        PrintDialog printDialog = new PrintDialog( );
        printDialog.Document = printDocument;
        lineReader = new StringReader( textBox.Text );
        if ( printDialog.ShowDialog( ) == DialogResult.OK )   
        {
            try       
            {
                printDocument.Print( );
            }
            catch( Exception excep )            
            {
                MessageBox.Show( excep.Message, "打印出错", MessageBoxButtons.OK, MessageBoxIcon.Error );
                printDocument.PrintController.OnEndPrint( printDocument,new PrintEventArgs( ) );
            }
        }
    }
    
    展开全文
  • 在windows应用程序中文档的打印是一项非常重要的功能,在以前一直是一个非常复杂的工作,Microsoft .Net Framework的打印功能都以组件的方式提供,为程序员提供了很大的方便,但是这几个组件的使用还是很复杂的,有...
  • C# 打印

    2008-07-12 16:10:00
    打印操作通常包括以下四个功能1 打印设置 设置打印机的一些参数比如更改打印机驱动程序等2 页面设置 设置页面大小纸张类型等3 打印预览 类似于word中的打印预览4 打印 实现打印功能的核心是PrintDocument类这个类...
    Microsoft .net Framework的打印功能都以组件的方式提供,为程序员提供了很大的方便,但是这几个组件的使用还是很复杂的,有必要解释一下。
    打印操作通常包括以下四个功能
    1 打印设置 设置打印机的一些参数比如更改打印机驱动程序等
    2 页面设置 设置页面大小纸张类型等
    3 打印预览 类似于word中的打印预览
    4 打印

    实现打印功能的核心是PrintDocument类这个类属于System.Drawing.Printing名字空间这个类封装了当前的打印设置页面设置以及所
    有的与打印有关的事件和方法
    这个类包括以下几个属性 事件 和方法
    1、PrinterSettings 属性
      存放打印机的设置信息这个属性不需要程序员设置因为它是由打印对话框获取的
    2、PrintCountroller 属性
      控制打印过程
    3、DefaultPageSettings 属性
      存放页面设置信息 打印纸大小方向等也不需要程序员设置因为它是由页面设置对话框获取的
    4、DocumentName 属性
      指定文档名称,出现在打印机状态窗口中
    1。 BeginPrint事件
      在打印之前发出
    2. PrintPage事件
      每打印一页是发出,事件接受一个PrintPageEventArgs参数该参数封装了打印相关的信息
      PrintPageEventArgs参数有很多重要的属性
      1 Cancel 取消打印
      2 Graphics 页面的绘图对象
      3 HasMorePages 是否还有要打印的页面
    Print 方法 该方法没有参数 调用它将按照当前设置开始打印
    若实现打印功能首先构造PrintDocument对象添加打印事件
    PrintDocument printDocument;
    private void InitializeComponent()
    {
    ...
    printDocument=new PrintDocument();
    printDocument.PrintPage += new PrintPageEventHandler (this.printDocument_PrintPage);
    ...
    }
    实现打印事件功能
    打印和绘图类似都是调用Graphics 类的方法进行画图 不同的是一个在显示器上一个在打印纸上并且打印要进行一些复杂的计算
    如换行 分页等。
    private void printDocument_PrintPage(object sender,PrintPageEventArgs e)
    {
    Graphics g = e.Graphics; //获得绘图对象
    float linesPerPage = 0; //页面的行号
    float yPosition = 0;   //绘制字符串的纵向位置
    int count = 0; //行计数器
    float leftMargin = e.MarginBounds.Left; //左边距
    float topMargin = e.MarginBounds.Top; //上边距
    string line = null; 行字符串
    Font printFont = this.textBox.Font; //当前的打印字体
    SolidBrush myBrush = new SolidBrush(Color.Black);//刷子
    linesPerPage = e.MarginBounds.Height / printFont.GetHeight(g);//每页可打印的行数
    //逐行的循环打印一页
        while(count < linesPerPage && ((line=lineReader.ReadLine()) != null))
        {
           yPosition = topMargin + (count * printFont.GetHeight(g));
           g.DrawString(line, printFont, myBrush, leftMargin, yPosition, new StringFormat());
           count++;
        }
    如果本页打印完成而line不为空说明还有没完成的页面这将触发下一次的打印事件在下一次的打印中lineReader会
    自动读取上次没有打印完的内容因为lineReader是这个打印方法外的类的成员它可以记录当前读取的位置
        if(line != null)
            e.HasMorePages = true;
        else
            e.HasMorePages = false;
    }
    打印设置,构造打印对话框 将对话框中设置的Document属性赋给printDocument这样会将用户的设置自动保存到printDocument
    的PrinterSettings属性中
    protected  void FileMenuItem_PrintSet_Click(object sender,EventArgs e)
    {
    PrintDialog printDialog = new PrintDialog();
    printDialog.Document = printDocument;
    printDialog.ShowDialog();
    }
    页面设置和打印预览与打印设置原理相同都是构造对话框将用户在对话框中的设置保存到相应的类的属性中
    protected  void FileMenuItem_PageSet_Click(object sender,EventArgs e)
    {
      PageSetupDialog pageSetupDialog = new PageSetupDialog();
      pageSetupDialog.Document = printDocument;
      pageSetupDialog.ShowDialog();
    }
    打印预览
    protected void FileMenuItem_PrintView_Click(object sender,EventArgs e)
    {
       PrintPreviewDialog printPreviewDialog = new PrintPreviewDialog();
       printPreviewDialog.Document = printDocument;
       lineReader = new StringReader(textBox.Text);
       try
          {
        printPreviewDialog.ShowDialog();
          }
        catch(Exception excep)
        {
        MessageBox.Show(excep.Message, "打印出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
    打印就可以直接调用printDocument的Print()方法因为用户可能在打印之前还要再更改打印设置所以
    在这里再次显示打印设置对话框
      protected void FileMenuItem_Print_Click(object sender,EventArgs e)
      {
       PrintDialog printDialog = new PrintDialog();
       printDialog.Document = printDocument;
       lineReader = new StringReader(textBox.Text);
       if (printDialog.ShowDialog() == DialogResult.OK)
       {
        try
           {
           printDocument.Print();
           }
           catch(Exception excep)
                {
                  MessageBox.Show(excep.Message, "打印出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
                  printDocument.PrintController.OnEndPrint(printDocument,new PrintEventArgs());
                }
           }
      }
    总结打印的过程是
    1 在应用程序窗体初始化时构造PrintDocument对象  添加 printDocument 的 PrintPage 方法
    2 实现PrintPage方法  4 在用户的单击事件中调用 printDocument 的 Print方法实现打印功能
    在这中间可能要用到  PrintDialog PrintPreviewDialog PageSetupDialog 设置和查看打印效
    果这些方法通常是由菜单的单击触发的。

    展开全文
  • 打印操作通常包括以下四个功能1 打印设置 设置打印机的一些参数比如更改打印机驱动程序等2 页面设置 设置页面大小纸张类型等3 打印预览 类似于word中的打印预览4 打印实现打印功能的核心是PrintDocument类这个类属于...
     Microsoft .net Framework的打
    印功能都以组件的方式提供,为程序员提供了很大的方便,但是这几个组件的使用还是很复杂的,有必要解释一下。
    打印操作通常包括以下四个功能
    1 打印设置 设置打印机的一些参数比如更改打印机驱动程序等
    2 页面设置 设置页面大小纸张类型等
    3 打印预览 类似于word中的打印预览
    4 打印

    实现打印功能的核心是PrintDocument类这个类属于System.Drawing.Printing名字空间这个类封装了当前的打印设置页面设置以及所
    有的与打印有关的事件和方法
    这个类包括以下几个属性 事件 和方法
    1、PrinterSettings 属性
      存放打印机的设置信息这个属性不需要程序员设置因为它是由打印对话框获取的
    2、PrintCountroller 属性
      控制打印过程
    3、DefaultPageSettings 属性
      存放页面设置信息 打印纸大小方向等也不需要程序员设置因为它是由页面设置对话框获取的
    4、DocumentName 属性
      指定文档名称,出现在打印机状态窗口中
    1。 BeginPrint事件
      在打印之前发出
    2. PrintPage事件
      每打印一页是发出,事件接受一个PrintPageEventArgs参数该参数封装了打印相关的信息
      PrintPageEventArgs参数有很多重要的属性
      1 Cancel 取消打印
      2 Graphics 页面的绘图对象
      3 HasMorePages 是否还有要打印的页面
    Print 方法 该方法没有参数 调用它将按照当前设置开始打印
    若实现打印功能首先构造PrintDocument对象添加打印事件
    PrintDocument printDocument;
    private void InitializeComponent()
    {
    ...
    printDocument=new PrintDocument();
    printDocument.PrintPage += new PrintPageEventHandler (this.printDocument_PrintPage);
    ...
    }
    实现打印事件功能
    打印和绘图类似都是调用Graphics 类的方法进行画图 不同的是一个在显示器上一个在打印纸上并且打印要进行一些复杂的计算
    如换行 分页等。
    private void printDocument_PrintPage(object sender,PrintPageEventArgs e)
    {
    Graphics g = e.Graphics; //获得绘图对象
    float linesPerPage = 0; //页面的行号
    float yPosition = 0;   //绘制字符串的纵向位置
    int count = 0; //行计数器
    float leftMargin = e.MarginBounds.Left; //左边距
    float topMargin = e.MarginBounds.Top; //上边距
    string line = null; 行字符串
    Font printFont = this.textBox.Font; //当前的打印字体
    SolidBrush myBrush = new SolidBrush(Color.Black);//刷子
    linesPerPage = e.MarginBounds.Height / printFont.GetHeight(g);//每页可打印的行数
    //逐行的循环打印一页
        while(count < linesPerPage && ((line=lineReader.ReadLine()) != null))
        {
           yPosition = topMargin + (count * printFont.GetHeight(g));
           g.DrawString(line, printFont, myBrush, leftMargin, yPosition, new StringFormat());
           count++;
        }
    如果本页打印完成而line不为空说明还有没完成的页面这将触发下一次的打印事件在下一次的打印中lineReader会
    自动读取上次没有打印完的内容因为lineReader是这个打印方法外的类的成员它可以记录当前读取的位置
        if(line != null)
            e.HasMorePages = true;
        else
            e.HasMorePages = false;
    }
    打印设置,构造打印对话框 将对话框中设置的Document属性赋给printDocument这样会将用户的设置自动保存到printDocument
    的PrinterSettings属性中
    protected  void FileMenuItem_PrintSet_Click(object sender,EventArgs e)
    {
    PrintDialog printDialog = new PrintDialog();
    printDialog.Document = printDocument;
    printDialog.ShowDialog();
    }
    页面设置和打印预览与打印设置原理相同都是构造对话框将用户在对话框中的设置保存到相应的类的属性中
    protected  void FileMenuItem_PageSet_Click(object sender,EventArgs e)
    {
      PageSetupDialog pageSetupDialog = new PageSetupDialog();
      pageSetupDialog.Document = printDocument;
      pageSetupDialog.ShowDialog();
    }
    打印预览
    protected void FileMenuItem_PrintView_Click(object sender,EventArgs e)
    {
       PrintPreviewDialog printPreviewDialog = new PrintPreviewDialog();
       printPreviewDialog.Document = printDocument;
       lineReader = new StringReader(textBox.Text);
       try
          {
        printPreviewDialog.ShowDialog();
          }
        catch(Exception excep)
        {
        MessageBox.Show(excep.Message, "打印出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
    打印就可以直接调用printDocument的Print()方法因为用户可能在打印之前还要再更改打印设置所以
    在这里再次显示打印设置对话框
      protected void FileMenuItem_Print_Click(object sender,EventArgs e)
      {
       PrintDialog printDialog = new PrintDialog();
       printDialog.Document = printDocument;
       lineReader = new StringReader(textBox.Text);
       if (printDialog.ShowDialog() == DialogResult.OK)
       {
        try
           {
           printDocument.Print();
           }
           catch(Exception excep)
                {
                  MessageBox.Show(excep.Message, "打印出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
                  printDocument.PrintController.OnEndPrint(printDocument,new PrintEventArgs());
                }
           }
      }
    总结打印的过程是
    1 在应用程序窗体初始化时构造PrintDocument对象  添加 printDocument 的 PrintPage 方法
    2 实现PrintPage方法  4 在用户的单击事件中调用 printDocument 的 Print方法实现打印功能
    在这中间可能要用到  PrintDialog PrintPreviewDialog PageSetupDialog 设置和查看打印效
    果这些方法通常是由菜单的单击触发的。

    展开全文
  • 打印操作通常包括以下四个功能1 打印设置 设置打印机的一些参数比如更改打印机驱动程序等2 页面设置 设置页面大小纸张类型等3 打印预览 类似于word中的打印预览4 打印 实现打印功能的核心是PrintDocument类这个类...
  • Microsoft .Net Framework的打印功能都以组件的方式提供,提供了很大的方便,  打印操作通常包括以下四个功能:  1 打印设置 设置打印机的一些参数,比如更改打印机驱动程序等;  2 页面设置 设置页面大小纸张...
  • 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。在网上搜索一下,找到解决方案 1.对于上面提到的报错,属于用户权限不够,所以需要设置用户相应的权限。 .NET导出Excel...
  • 修改BUG:矢量动画支持库中的“矢量编辑框”组件在光标位于组件左上角时按左光标键进入前一行可能会导致显示错误或内存申请失败。 11. 修改BUG:网络传送支持库在使用代理下载时可能会导致程序崩溃。 12. 修改BUG...
  • 简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对IT的憧憬、向往!...
  • JAVA上百实例源码以及开源项目

    千次下载 热门讨论 2016-01-03 17:37:40
    百度云盘分享 简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对...
  • 大部分asp程序属于开源程序,所有代码可以自由修改.asp.net部分源代码被加密成DLL文件,不能修改 asp.net开发软件过于庞大,运行速度慢,修改代码比较麻烦 asp.net程序的运行速度和asp相比没有太大的区别,关键在于程序...
  • React 实践项目 (一)

    2020-12-02 23:39:03
    我们在 <strong>App.js</strong> 里导入了一个目前还不存在的组件。现在,我们来创建它: <ul><li>首先,创建 <strong>src/components/Index</strong> 目录,在该目录下创建 <strong>Header...

空空如也

空空如也

1 2
收藏数 21
精华内容 8
关键字:

以下组件属于word