C#直接发送打印机命令到打印机 ++++

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;

namespace BarCodeLibrary
{
public class ZebraGesigner
{
[StructLayout(LayoutKind.Sequential)]
private struct OVERLAPPED
{
int Internal;
int InternalHigh;
int Offset;
int OffSetHigh;
int hEvent;
}
[DllImport("kernel32.dll")]
private static extern int CreateFile(string lpFileName, uint dwDesiredAccess, int dwShareMode, int lpSecurityAttributes, int dwCreationDisposition, int dwFlagsAndAttributes, int hTemplateFile);
[DllImport("kernel32.dll")]
private static extern bool WriteFile(int hFile, byte[] lpBuffer, int nNumberOfBytesToWriter, out int lpNumberOfBytesWriten, out OVERLAPPED lpOverLapped);
[DllImport("kernel32.dll")]
private static extern bool CloseHandle(int hObject);
[DllImport("fnthex32.dll")]
public static extern int GETFONTHEX(string barcodeText,string fontName,int orient,int height,int width,int isBold,int isItalic,StringBuilder returnBarcodeCMD);
private int iHandle;
//打开LPT 端口
public bool Open()
{
iHandle = CreateFile("lpt1", 0x40000000, 0, 0, 3, 0, 0);
if (iHandle != -1)
{
return true;
}
else
{
return false;
}
}
//打印函数,参数为打印机的命令或者其他文本!
public bool Write(string MyString)
{
if (iHandle != 1)
{
int i;
OVERLAPPED x;
byte[] mybyte = System.Text.Encoding.Default.GetBytes(MyString);
return WriteFile(iHandle, mybyte, mybyte.Length, out i, out x);
}
else
{
throw new Exception("端口未打开~!");
}
}
     //关闭打印端口
public bool Close()
{
return CloseHandle(iHandle);
}
}
}

*************************************

vate void button1_Click(object sender, EventArgs e)
{
ZebraGesigner zb = new ZebraGesigner();
string mycommanglines = System.IO.File.ReadAllText("print.txt");//print.txt里写了条码机的命令
zb.Open();
zb.Write(mycommanglines);
zb.Close();
}

时间: 2024-10-12 08:35:36

C#直接发送打印机命令到打印机 ++++的相关文章

C#直接发送打印机命令到打印机及ZPL常用打印命令 - 条码打印机

using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; namespace BarCodeLibrary { public class ZebraGesigner { [StructLayout(LayoutKind.Sequential)] private struct OVERLAPPED { int Internal; int Inter

使用telnet连接memcached,发送统计命令:stats

使用telnet连接memcached,发送统计命令:stats.shell>telnet 192.168.51.110  11211 Trying 192.168.228.3... Connected to 192.168.228.3. Escape character is '^]'. statsSTAT pid 6995STAT uptime 87233STAT time 1222314531STAT version 1.2.6STAT pointer_size 32STAT rusage

6种品牌打印机介绍及打印机旗舰店推荐

小朋友上幼儿园了,很开心.老师总是隔三差五的让带个照片,做个成长手册什么的,这个就老头疼了,每次都出去打印确实不太方便,要是自己家能有个打印机就好多了,不管什么时候需要照片,材料什么的都不必麻烦了,所以家里有个家用打印机是非常有必要的. 如何选择打印机 家用打印机的选择,首先还是要看具体的打印需求是什么?家庭的打印基本分为三类,黑白打印,彩色文档打印和照片打印,如果只是黑白打印的需求,首选是黑白激光打印机,具体的型号选择还得看印量而定,如果月打印量少于500页,那就买一台最低端的激光打印机好了,

本地打印机和共享打印机以及server版本如何创建新用户

这篇跟大家分享一点打印机的知识内容,我们习惯把打印设备叫打印机,这里我们按专业角度来讲,我们现实中看得见的那是打印设备叫物理打印机,而打印机其实是逻辑驱动,也叫逻辑打印机.首先我们打开两台虚拟机,server版本跟win10客户机(两台win10客户机做实验也是一样的)配置相同网段,配置好IP地址,然后测试两台虚拟机是否互通,配置完毕后我们打开其中的server版本桌面.我们先创建一个新用户,打开服务器管理器找到工具点开工具后找到计算机管理并打开然后进入界面后找到用户在空白地方右键鼠标出现列表点

iOS-为librtmp库添加向服务器发送录制命令方法

SAVC(recordName); SAVC(confID); SAVC(timestamp); #define AVS(str) {str,strlen(str)} int startRecord(RTMP *r, RTMPPacket *cp, char *recordData,  char *recordName,  char *confID, char *timestamp) { RTMPPacket packet; char pbuf[1024], *pend = pbuf + siz

发送键盘命令生成get set脚本。

2017年,共享经济持续成为大众关注的焦点,从共享单车.共享雨伞.共享充电宝,到共享电动车.共享汽车.共享床位,甚至连女友都拿来共享了.戴上"共享"高帽的创业项目一茬接一茬地冒出来,正如收割的韭菜,最开始两茬是最嫩的,接下来生长出来的则会让人觉得食之无味又弃之可惜.对于投资人如此,对于用户们来说有何尝不是呢? 让我们盘点下近一年出现过的"共享"明星们,对于它们,死亡还是生存?这是个问题. 据统计,2016年中国的共享经济市场规模接近4万亿元:2017年,共享系宣告进

C# 发送http方法,利用键值对 KeyValuePair,发送分页命令,日历的开始和结束时间命令(POST)

一个HTTP的类里面: public static string HttpClientPost(string url, string taskIdx, string taskidxvalue, string source_ID, string source_ID_value, string StartTime, string StartTimeValue, string endTime, string endTimeValue, string startNum, string startNumV

把USB打印机映射到LPT端口

把USB打印机映射到LPT端口(pos小票机测试成功)2010-12-23 18:11:00| 分类: 編程 | 标签: |字号大中小 订阅 注释:在DOS命令行下运行以下命令(以下为示例,根据实际情况要有所改动):NET USE LPT2 \\192.168.0.2\EPSONLQ635 /PERSISTENT:YES;以上这行的含义为将打印端口LPT2映射为共享主机192.168.0.2的共享打印机EPSONLQ635;这时本机应用程序把打印结果发送到LPT2就会在共享主机192.168.0

XP中如何配置和共享打印机

Win XP中如何配置和共享打印机 一.配置 打印机 在"控制面板"打开"打印机和传真",在左边的选项或单击右键选择"添加打印机": 2)点击"下一步" 3)接着点击"下一步":注意:在上图中一定不能选择"自动检测并安装即插即用的打印机"这个复选框(如图2): 4)做如上图选择后,点击"下一步": 6)填好资料后点击"下一步":注:上图中"