windows打印以page方式驱动打印机,行方式驱动需调用API或用种变通的方式。

方法一

简单的写到一个文件里然后

System.Diagnostics.Process.Start("cmd"," /c copy d:\1.txt  prn")

输出重定向简单易行打个receipt啥的足够用,就是感觉很业余,呵呵。

方法二
这个就要用几个API 了

Class  RawPrinterHelper

C# 逐行驱动打印using System;
C# 逐行驱动打印
using System.IO; 
C# 逐行驱动打印
using System.Drawing.Printing; 
C# 逐行驱动打印
using System.Runtime.InteropServices; 
C# 逐行驱动打印
C# 逐行驱动打印
C# 逐行驱动打印
public class RawPrinterHelper 
}



调用

C# 逐行驱动打印
C# 逐行驱动打印    sPrintStr   
= " test"
C# 逐行驱动打印
C# 逐行驱动打印    PrintDialog pd 
= new PrintDialog(); 
C# 逐行驱动打印    pd.PrinterSettings 
= new PrinterSettings(); 
C# 逐行驱动打印    
//if (pd.ShowDialog(this) > DialogResult.None)
C# 逐行驱动打印    
//{
C# 逐行驱动打印
    RawPrinterHelper.SendStringToPrinter(pd.PrinterSettings.PrinterName, sPrintStr); 
C# 逐行驱动打印    
//}

 

有段以前VB的懒的改了找了段VB.net  http://support.microsoft.com/default.aspx?scid=KB;EN-US;322090 的翻过来,结果搞了一个多小时才调通还不如自己写呢。
原代码语法翻译工具 VB.Net  To C# 编译时候会遇到n多默认名空间、类型转换、修饰符、返回值、初始化、方法的()等问题,SendFileToPrinter是编译后用Reflector反编译回来的也有些莫名其妙的问题。
我语法翻译了一份,反编译一份对照这改才算调试通过了。
VB.net的代码还是编译了再 DllImport方便些。

相关文章:

  • 2022-12-23
  • 2021-05-23
  • 2022-01-12
  • 2021-12-24
  • 2021-12-27
  • 2021-08-05
  • 2021-07-24
  • 2022-12-23
猜你喜欢
  • 2022-02-25
  • 2021-10-06
  • 2021-11-18
  • 2021-11-20
  • 2021-10-18
相关资源
相似解决方案