zoukankan      html  css  js  c++  java
  • WOrd ,excel实现打印功能

                PrintDocument print = new PrintDocument();
                string sDefault = print.PrinterSettings.PrinterName;//默认打印机名
                string s = "";
                foreach (string sPrint in PrinterSettings.InstalledPrinters)//获取所有打印机名称
                {
                    s = sPrint;
                }
                return;
                OpenFileDialog fileDialog = new OpenFileDialog();
                //fileDialog.Title = "请选择文件";
                //fileDialog.Filter = "excel03文件(*.xls)|*.xls";
                //fileDialog.FilterIndex = 1;
                //fileDialog.RestoreDirectory = true;

                if (fileDialog.ShowDialog() == DialogResult.OK)
                {
                    #region excel
                    //Microsoft.Office.Interop.Excel.ApplicationClass xlsApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
                    //xlsApp.Visible = true;
                    //object oMissing = System.Reflection.Missing.Value;
                    //Microsoft.Office.Interop.Excel.Workbook xlsWorkbook = xlsApp.Workbooks.Open(fileDialog.FileName, 0, true, 5, oMissing, oMissing, true, 1, oMissing, false, false, oMissing, false, oMissing, oMissing);
                    //Microsoft.Office.Interop.Excel.Worksheet xlsWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)xlsWorkbook.Worksheets[1];
                    ////xlsWorksheet.PrintPreview(null);
                    //xlsWorksheet.PrintOut(1, 2, 1, false, oMissing, true, false, oMissing);
                    //xlsApp.Visible = false;
                    //xlsWorksheet = null;
                    #endregion
                    #region word
                    object wordFile = fileDialog.FileName;
                    object oMissing = Missing.Value;
                    object copies = "1";
                    object oTrue = true;
                    object oFalse = false;
                    object doNotSaveChanges = Microsoft.Office.Interop.Word.WdSaveOptions.wdDoNotSaveChanges;
                    Microsoft.Office.Interop.Word.Application appWord = new Microsoft.Office.Interop.Word.Application();
                    appWord.Visible = false;
                    appWord.DisplayAlerts = Microsoft.Office.Interop.Word.WdAlertLevel.wdAlertsNone;
                    string defaultPrinter = appWord.ActivePrinter;
                    Microsoft.Office.Interop.Word.Document doc = appWord.Documents.Open(
                        ref wordFile ,
                        ref oMissing,
                        ref oTrue ,
                        ref oFalse ,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing);
                    //弹出打印设置
                    //appWord.Dialogs[Microsoft.Office.Interop.Word.WdWordDialog.wdDialogFilePrint].Show(ref oMissing);
                    //appWord.Visible = false;
                    appWord.ActivePrinter = "hp3030 ";
                    doc.PrintOut(
                        ref oTrue,
                        ref oFalse,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref copies,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing);
                    appWord.ActivePrinter = defaultPrinter;
                    doc.Close(ref doNotSaveChanges, ref oMissing, ref oMissing);
                    appWord.Quit(ref oMissing, ref oMissing, ref oMissing);
                    doc = null;
                    appWord = null;
                    GC.Collect();
                    #endregion word

                }

  • 相关阅读:
    BZOJ 1009 GT考试
    BZOJ 2085 [POI2010] Hamsters
    BZOJ 3160 万径人踪灭
    左偏树 / 非旋转treap学习笔记
    BZOJ 3217 ALOEXT
    BZOJ 3065 带插入区间第K小值
    BZOJ2716 天使玩偶
    XSY1659 [HNOI2012]永无乡
    BZOJ1367【Baltic2004】sequence
    蔡勒公式 计算星期
  • 原文地址:https://www.cnblogs.com/swarb/p/9924430.html
Copyright © 2011-2022 走看看