[C#]调用Bartender服务并打印bartender标签

标签: bartender c#
9582人阅读 评论(3) 收藏 举报
分类:

通常大部分企业在生产,仓储,QC等运作环节会用到标签,标签上有些各种标识。
一般的企业都有配有标签软件+专用的标签打印机。此例以bartender为例子。
如果为了实现打印条码,或者显示具体的功能,用CR,FR等都可以实现。但这些报表工具毕竟不是专业的标签软件。
好兄弟大牛超哥分享了一个delphi写的源码,可惜我不会delphi也就没有IDE环境去看源码,就想C#写一个类似的功能:
大概的思路:调用Bartender服务并打印bartender标签
(1)下载Bartender的SDK,直接引用了(也没有研究SDK,偷懒。。。)
(2)安装bartender的软件,并制作标签作为测试用,本例:合格证。
(3)代码实现
程序界面:
这里写图片描述
制作标签:
这里写图片描述

代码如下(其中一个标签类型的代码,其他省略):
    public partial class FrmQC : Form
    {
        public FrmQC()
        {
            InitializeComponent();
        }
        BarTender.Application btApp;
        BarTender.Format btFormat;


        private void Form1_Load(object sender, EventArgs e)
        {
            btApp = new BarTender.Application();
            this.num2.Value = 1;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            int a = Int32.Parse(this.num2.Value.ToString());//设置打印数量的变量
            if (this.txtItem.Text.Length == 0 )
            {
                MessageBox.Show("未输入料号");
            }
            else
            {
                btFormat = btApp.Formats.Open(@"C:\BarTenderFiles\合格证", false, "");
                btFormat.PrintSetup.IdenticalCopiesOfLabel = 1;  //设置同序列打印的份数
                btFormat.PrintSetup.NumberSerializedLabels = a;  //设置需要打印的序列数
                btFormat.SetNamedSubStringValue("品号", this.txtItem.Text); //向bartender模板传递变量
                btFormat.SetNamedSubStringValue("品名", this.txtName.Text); //向bartender模板传递变量
                btFormat.SetNamedSubStringValue("规格", this.txtDesc.Text); //向bartender模板传递变量
                btFormat.SetNamedSubStringValue("批号", this.txtPici.Text); //向bartender模板传递变量
                btFormat.SetNamedSubStringValue("日期", System.DateTime.Now.Year + "." + System.DateTime.Now.Month + "." + System.DateTime.Now.Day ); //向bartender模板传递变量
                btFormat.SetNamedSubStringValue("月份", System.DateTime.Now.Month + "月份"); //向bartender模板传递变量
                btFormat.SetNamedSubStringValue("月",  System.DateTime.Now.Month.ToString()); //向bartender模板传递变量


                btFormat.PrintOut(true, true); //第二个false设置打印时是否跳出打印属性
                btFormat.Close(BarTender.BtSaveOptions.btSaveChanges); //退出时是否保存标签



            }
        }
        private void Form1_FormClosed(object sender, FormClosedEventArgs e)
        {
            btApp.Quit(BarTender.BtSaveOptions.btSaveChanges);//界面退出时同步退出bartender进程
        }
    }

由于没有测试环境没有连接TSC标签打印机,普通打印机A4纸张输出结果:
这里写图片描述

注意:标签模板变量需设置成共享名。
否则会遇到这样的问题:
红色字体部分报错 [System.Runtime.InteropServices.COMException] = {“已命名子字串 Name 未在已命名子字串列表中找到。”}求解决办法

查看评论

ODBC文件DSN 的结构

                       ODBC文件DSN 的小秘密1. 用附件带的WORDPAD文本编辑器,  建立一后缀名为 .DSN的文件,  格式如下, 然后按文本格式存起来:注意: 格...
  • greenlea
  • greenlea
  • 2000-12-14 18:44:00
  • 977

C#.Net集成Bartender条码打印的方法(泪流满面终于解决!)

先感谢http://www.cnblogs.com/zhongxinWang/archive/2013/08/22/3275154.html 博主,这篇文章帮了我很大的忙。...
  • HW1233456
  • HW1233456
  • 2014-05-08 14:49:04
  • 15097

C#调用BarTender 模板

1.电脑装 BarTender软件 2.新建WINFORM测试项目 3.添加COM 组件(由安装软件目录SDK文件夹) 4.     //添加COM 引用BarTender         实例化 ...
  • u013002790
  • u013002790
  • 2017-07-16 16:53:01
  • 1947

Bartender条码使用方法C#

去官网下载10.1版本,http://www.bartender.cc/xiazai.html 安装在C盘较好吧C:\ProgramFiles (x86)\Seagull\BarTender Suit...
  • luojianfeng
  • luojianfeng
  • 2017-08-09 16:44:27
  • 1593

c# BarTender打印

1.btw文件创建时设置“源”为打印机代码模板字段         2.共享名称中设置 传递变量名称   //打印        BarTender.Application btApp;   ...
  • windowsliusheng
  • windowsliusheng
  • 2016-06-20 18:11:31
  • 2341

.Net调用BarTender SDK及应用实例

  • 2014年08月22日 15:55
  • 2.02MB
  • 下载

C#调用BarTender 错误

需要调用BarTender 打印条码信息,但在客户端总提示如下错误,BarTender 软件注册了也还是如此。 查了资料应该是需要装bartender enterprise automation ...
  • zhanglei2060
  • zhanglei2060
  • 2017-03-03 16:14:01
  • 507

c# 使用bartender sdk 打印

在网上参考了其它的资料,研究了bartender打印,走了不少弯路。     安装完bartender后,装全功能版本,在安装路径下,可以找到sdk文件,我需要根据传入的excel文件,检查bart...
  • liangzhonglin
  • liangzhonglin
  • 2016-06-11 23:11:46
  • 5236

C#打印条码的几种方式

标题虽然是说C#,但是以下介绍的几种方法不是只能在C#中使用,在其它的语言里面也行。   总结一下常见的条码打印方法,其实打条码的方式很多,大概有以下几种: 1.斑马打印软件制作好模板,保存为....
  • chenpeng0118
  • chenpeng0118
  • 2014-09-14 16:33:17
  • 5804

[Bartender]C#调用BartenderSDK使用场景-客户标签案列

使用场景分析 PULL模式:根据标签软件制作模板后设置连接,或者直接输入打印 PUSH模式:利用各种程序语言抓取各种数据推送到指定模板输出打印 固定资产标签等等 PUSH模式大多用于模板会根...
  • david_520042
  • david_520042
  • 2017-06-07 10:43:09
  • 1065
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 257万+
    积分: 3万+
    排名: 133
    博客专栏
    最新评论
    文章存档