c#如何通过终端的rdp协议封装打印到本地打印机。 40C

1、本人c#引用Microsoft RDP Client Control协议,winform托管RemoteApp,已经成功

运行windows server 2008 r2发布的程序。
2、但终端打印无法打印出来。

跪求:c#如何通过终端的rdp协议封装打印到本地打印机。

4个回答

c# 调用zebra打印机指令打印条码,如果直接打印到lpt1端口的打印机,通过copy指令没有问题,

但如果ZEBRA打印机是通过USB连接,打印机端口为usb001,则程序不能直接拷贝到usb001端口。

必须先共享本机的usb端口打印机,再将共享后的打印机名连接为LPT端口打印机,则可以成功打印。

from:

http://answers.microsoft.com/en-us/windows/forum/windows_7-hardware/how-do-i-print-a-file-to-my-usb-printer-in-windows/cc20646f-686c-4b45-9495-1d833b0f5fda

一下是设置步骤:

Set the printer to Shared, and make note of the name that you give it.
Then go to Start | Run, and enter the line
NET USE LPT1 \name of your computer\shared name of printer
You will now be able to issue the command
COPY /b \path\filename.prn LPT1:

/b 参数不用也可以。
private void button1_Click(object sender, EventArgs e)
{
string wo = "TEST002";
string tmpFile = "d:\123.txt";
string prtName = @"\WIN7-20140313GI\test";
StringBuilder str = new StringBuilder();

        str.Append("^XA \r\n"); //打印命令开始
        str.Append("^LL 600^FS \r\n");//定义标签长度 105SL 300 DPI (1mm 12pt) 50mm*12
        str.Append("^PW 1200 \r\n");  //定义标签寬度 100mm*12
        str.Append("^FO40,60^A@N,55,35,E:ARIALR.FNT^FDWO:" + wo + "^FS \r\n");//定义坐标,字体
        str.Append("^FO40,150^BY4,4^BCN,100,N,N,N,A^FR^FD" + wo + "^FS \r\n");//128码
        str.Append("^XZ");//结束打印



        using (System.IO.StreamWriter sw = new System.IO.StreamWriter(tmpFile))
        {
            sw.Write(str.ToString());            
        }

        System.IO.File.Copy(tmpFile, prtName, true);
    }

c# 调用zebra打印机指令打印条码,如果直接打印到lpt1端口的打印机,通过copy指令没有问题,
但如果ZEBRA打印机是通过USB连接,打印机端口为usb001,则程序不能直接拷贝到usb001端口。
必须先共享本机的usb端口打印机,再将共享后的打印机名连接为LPT端口打印机,则可以成功打印。
from:
http://answers.microsoft.com/en-us/windows/forum/windows_7-hardware/how-do-i-print-a-file-to-my-usb-printer-in-windows/cc20646f-686c-4b45-9495-1d833b0f5fda
一下是设置步骤:
Set the printer to Shared, and make note of the name that you give it.
Then go to Start | Run, and enter the line
NET USE LPT1 \name of your computer\shared name of printer
You will now be able to issue the command
COPY /b \path\filename.prn LPT1:
/b 参数不用也可以。
private void button1_Click(object sender, EventArgs e)
{
string wo = "TEST002";
string tmpFile = "d:\123.txt";
string prtName = @"\WIN7-20140313GI\test";
StringBuilder str = new StringBuilder();

感谢回复,但好象回复内容与我说的需求不一致。可能是我说得不够清楚。上图如下
图片说明

与这个问题是一样的。哪位兄弟知道如何解决啊
http://bbs.csdn.net/topics/220068778

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问