
简介《BarTender 使用说明书》面向条码标签设计、打印运维及生产标签制作的初、中级用户也适合需要系统梳理 BarTender 操作流程的技术人员用于解决驱动配置、界面操作、数据库连接与序列打印等环节缺少完整参考的问题。资源包含 1 个 doc 文档压缩包约 1.23MB便于在电脑端直接查阅和检索。内容按章节展开覆盖 Seagull 打印机驱动的优势与字体下载、类 Windows 的拖拽排列和自定义工具箱、图像导出、背景与口令设置以及数据库打印、字体大小自动调整、每条记录打印数量、查询与 SQL、文本数据库和 SAP 中间文档打印还涉及序列打印、子串与共享、打印前提示和 Commander 中间件等进阶主题。已有 912 人学习可作为日常操作时按目录定位问题的参考手册也适合从头通读以建立较完整的标签打印知识框架。1. 从一台新配的工控机说起BarTender 装完打不出标签问题多半不在软件上周给一台新配的工控机装环境BarTender 装完能打开、能预览一点打印就卡在「正在发送到打印机」最后吐出来半张白纸条码糊成一团。换了两版软件都没用查到最后是系统自带的通用驱动把活接了Seagull 驱动那一步被跳过了。这类事我碰上不止一次——手里这份《BarTender 使用说明书》把 Seagull 打印机驱动和字体放在最前面讲是有道理的标签打印这条链路上软件只是其中一环驱动和字体才是决定成败的两环。这份资料适合刚接手标签打印岗位的开发者、需要把 BarTender 从一台机器搬到另一台机器上的运维以及想把数据库、序列号、共享名这些功能真正用起来的人。下面按「装什么、怎么装、坏了怎么救」走一遍能照着复现。2. 装前把环境列清系统位数、.NET 依赖与安装包落地装 BarTender 之前我很怕那种「先装了再说」的做法。这软件本身不大但它牵着一条完整的打印链路操作系统 → .NET 运行时 → 打印后台服务 → 驱动 → 打印机固件。哪一环版本对不上表现都是「软件能开、就是打不出来」排查起来特别费时间。所以第一步是把现场信息摸清楚不是急着双击安装包。2.1 一份能照着对的环境清单下面的表是我自己用的进场检查表新机器、迁移机器、客户现场都走一遍。左边是检查项中间是合格线右边是查法。别嫌麻烦这张表能省掉的返工时间远比填表的时间多。检查项合格线怎么查操作系统Windows 10/11 或对应版本的 Windows Server位数与安装包一致winver、systeminfo.NET Framework4.x 完整版已安装非 Client Profile注册表 Release 值磁盘空间系统盘与安装盘各留 5 GB 以上资源管理器账户权限本地管理员且安装时用「以管理员身份运行」whoami /groups打印后台服务Spooler 处于 Running启动类型自动sc query spooler网络端口打印机 IP 可达9100 端口能通telnet、Test-NetConnection安全软件实时防护在安装期间临时关闭或加白现场确认位数这件事我踩过坑。64 位系统上装了个 32 位的驱动BarTender 里打印机列表能看到设备一打印就报「无法打开打印机」日志里翻半天才看到驱动架构不匹配。判断方式很简单systeminfo里看「系统类型」x64-based PC就是 64 位驱动和安装包都往 x64 那一栏选。2.2 依赖先补.NET Framework 与打印后台服务.NET Framework 是 BarTender 的硬依赖缺了它安装程序会直接拦住或者装完启动报初始化失败。多数 Windows 10/11 自带 4.8但服务器版和老镜像不一定。查版本我用注册表最稳比翻「启用或关闭 Windows 功能」快。:: 查 .NET Framework 4.x 的发布号528040 及以上对应 4.8 reg query HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full /v Release :: 查打印后台服务状态确认是 RUNNING 且启动类型自动 sc query spooler sc config spooler start auto net start spoolerreg query那一行的Release值是个十进制数4.5 是 3783894.8 是 528040数字对不上就说明需要补装运行时。sc config里的start auto等号后面必须有空格这是sc命令的老规矩写成startauto会报参数错误——这种小地方最容易让人以为是权限问题。Spooler 停掉的情况在精简系统镜像里挺常见服务没起任何打印任务都会静默失败BarTender 那边只显示「已发送」。提示装完 .NET 运行时务必重启一次再装 BarTender不重启的话部分程序集会加载旧版本表现是安装成功但一开就闪退。2.3 安装包落地图形向导和静默安装两条路单台机器我一般走图形向导稳妥批量部署或者远程装到无人值守的机器上才用静默参数。BarTender 的安装器是 InstallShield 打包的支持把 MSI 参数透传进去写法是/s /v...。:: 以管理员身份执行/s 静默、/v 透传 MSI 参数、/qn 无界面、/norestart 不自动重启 setup.exe /s /v/qn /norestart INSTALLDIR\D:\Seagull\BarTender\ :: 装完确认服务与版本信息是否落地 dir D:\Seagull\BarTender /b/s告诉 InstallShield 外层安装器静默运行/v后面的内容原样交给内层 MSI/qn表示全程不弹窗INSTALLDIR是自定义安装目录。路径里带空格时必须加转义的双引号否则参数会被截断装到一半失败。这套参数在不同年份版本里偶有差异如果执行完目录是空的说明参数没被识别退回图形向导重装一遍别在那里死磕。装完先别急着配标签模板做三件事第一确认安装目录里有主程序和 Commander 之类的附带组件第二用管理员账户启动一次让程序完成首次初始化并写入用户配置第三看授权状态。BarTender 的授权有本地激活和许可服务器两种模式企业环境里通常是连许可服务器服务器地址填错的表现是每次启动都提示试用此时核对授权服务器连通性和端口而不是重装。还有一个容易被忽略的点模板文件.btw存放在哪个目录、由谁维护。我一般会在 D 盘建一个统一的模板目录安装完成后立刻把它加成 BarTender 的默认打开位置同时给打印操作员只读权限。这一步看着跟安装无关但等到有人误改了正式模板再来救成本比现在高十倍。3. Seagull 驱动安装打印机认不出来多半是这一步省了3.1 为什么优先用 Seagull 驱动而不是系统自带驱动决定了 BarTender 下发给打印机的到底是什么。Seagull 这套驱动的特点是覆盖面广、更新跟得紧很多型号用系统自带驱动时出现的怪问题——打印半张、走纸偏移、条码边缘发虚——换了官方驱动就没了。它还有一个更关键的能力完整支持打印机内嵌字体和条码字体可以把手里的内容直接翻译成打印机原生指令发下去。内嵌字体和 Windows 字体的差别看指令流最直观。调用打印机内嵌字体时BarTender 发给打印机的是「用第 N 号字体打印这串字符」指令很短调用 Windows 字体时得先把字符集下载到打印机再让它渲染。单张标签看不出差别一旦进入序列打印或者批量数据库打印同一个 Windows 字体被反复下载效率差距就出来了几百张以上能明显感觉到出标速度掉下来。这也是为什么文档里专门用两张指令流截图做对比。3.2 驱动安装与端口配置驱动包的获取路径是官方驱动页按打印机品牌型号选对应包下载完是压缩包解压后能看到一批 inf 文件。安装方式有两种图形界面走「添加打印机 → 从磁盘安装 → 指向 inf」或者命令行用pnputil灌进驱动仓库后者适合批量。:: 把解压目录下所有 inf 递归装进驱动仓库/install 立即匹配已连接设备 pnputil /add-driver D:\Drivers\Seagull\*.inf /install /subdirs :: 列出当前所有打印机端口确认新端口是否已创建 cscript //nologo %WINDIR%\System32\Printing_Admin_Scripts\zh-CN\prnport.vbs -l/add-driver是往驱动仓库添加/install表示添加完立刻尝试安装到匹配的设备上/subdirs让命令递归子目录——Seagull 的包里 x86 和 x64 分开放不加这个参数只会装到一半。pnputil至少要 Windows 10 1809 以上才支持这几组开关老系统上就老老实实走图形向导。端口这步是真正的分水岭。网络打印机用标准 TCP/IP 端口协议选 RAW端口号 9100这是绝大多数标签机的默认接收方式。图形界面在「添加打印机 → 创建新端口 → Standard TCP/IP Port」里填 IP 和端口命令行等价写法如下。:: 创建名为 IP_192.168.1.50 的 RAW 端口主机 192.168.1.50端口号 9100 cscript //nologo %WINDIR%\System32\Printing_Admin_Scripts\zh-CN\prnport.vbs ^ -a -r IP_192.168.1.50 -h 192.168.1.50 -o raw -n 9100-a是添加-r指定端口名建议直接用 IP 命名后面排查一眼就知道对应哪台机器-h是主机地址-o raw指定 RAW 协议-n是端口号。有人图省事用 LPR 加队列名结果打印机不认队列任务全卡在队列里。标签机场景下 RAW 9100 是最省心的选择除非现场网络策略强制走 LPR。端口配好后把打印机驱动指向刚装好的 Seagull 驱动打印一张测试页。测试页能出说明驱动和端口这条链路通了测试页不出但任务显示「已打印」那就是端口或网络的问题跟 BarTender 一点关系都没有。3.3 内嵌字体与 Windows 字体的取舍以及把字体下到打印机内嵌字体效率高但字形选择少遇到客户指定字体或者中文字形要求严格的情况还是得用 Windows 字体。想两头都要办法是把 Windows 字体下载到打印机里让打印机把它当成自己的内嵌字体用。文档里给的路径是右击打印机 → 属性 → 找到字体下载相关的设置页勾选要下发的字体执行发送。命令行环境里更常见的做法是在 BarTender 的打印机属性面板里操作因为它会顺带把字体和模板绑定关系记下来。对比项内嵌字体Windows 字体下载后的 Windows 字体指令长度短只发索引长含字符集下载短等同内嵌序列打印效率高低反复下载高字形可选范围受限于打印机系统里有什么用什么系统里有什么用什么换机器后一致性强依赖目标机字体依赖打印机存储字体下载不是一劳永逸的打印机断电、恢复出厂、换主板之后可能丢失所以这台机器的字体清单要记在部署文档里。我的习惯是下载完立刻打一张包含全部字体的样张贴在设备旁边后面谁接手一眼能看出来少了哪个。3.4 把现场信息一次性采全技术支持最怕的是「打不出来」四个字其他什么都没有。BarTender 和驱动都提供了信息导出入口打印机属性里的版本/关于页可以保存成网页格式里面含驱动版本、端口、固件信息BarTender 自身的关于页也能导出程序版本和授权状态。让对方把这几份网页和一式两份的样张一起发过来比来回问十轮强得多。这一步我建议写进日常巡检流程出问题的时候直接调档不用现场再跑一趟。4. 数据库、序列与共享名三层内容绑定怎么配4.1 三条数据库连接路径Excel、文本、SQLBarTender 连数据库的入口统一在「数据库设置」里右击就能看到。日常用得最多的是三类Excel 表格、分隔符文本、以及通过 OLE DB 或 ODBC 连的关系库。Excel 最省事适合几百行的固定格式文本数据库多一个步骤连接时要指定字段分隔符逗号、制表符、分号以及「首行是否作为字段名」这两个选项选错字段列表里会出现一堆奇怪的列名拖拽映射就全乱了。关系库的场景我一般不让 BarTender 直接对着业务大表查。标签打印是高频小批量操作一个大表扫描能把打印间隔拖到几十秒。稳妥的做法是在数据库侧建一个视图把过滤和字段裁剪都做完BarTender 只负责取结果。-- 只取当天待打印的记录字段名尽量和标签元素一一对应 SELECT OrderNo, CustomerName, PartNo, BatchNo, PrintQty FROM dbo.v_LabelQueue WHERE PrintFlag 0 AND PrintQty 0 ORDER BY OrderNo;这个视图把「未打印」和「数量大于零」两个条件前置了PrintQty字段后面会被 BarTender 直接当成每条的打印份数用。视图的好处是业务表结构变了只要视图的对外字段名不变标签模板就不用动。稍微熟悉 SQL 的人可以在 BarTender 的「查询和 SQL」里直接改 WHERE 条件不熟的人用查询向导点选效果一样。4.2 字段映射、字号自动调整与子串连上库以后左侧会出现字段列表把字段直接拖到标签元素上就完成绑定这是 BarTender 最舒服的设计之一跟 Windows 里的拖拽排列是一套手感。但拖完往往会遇到一个现实问题有的字段特别长超出了预留的框打出来被截断或者挤成一坨。解决办法是开自动调整大小。右击那个标签元素 → 属性 → 文本 → 勾选「自动调整大小」→ 设好字号上限和下限。上限决定它最短能缩到多小下限防止它缩成看不清的蚂蚁字。超过下限还放不下就配合段落折行让内容换行显示而不是一味缩小。这两项配合使用同一套模板能兼容长短不一的客户名。OrderNo,CustomerName,PartNo,BatchNo,PrintQty SO2024001,华东某制造企业,PN-8842,B240715,3 SO2024002,华南某电子厂,PN-9103,B240716,1这是一段文本数据库样例第一行是字段名逗号分隔。连接时如果把「首行作为字段名」关掉左边字段列表就会显示成 F1、F2、F3拖出来的东西全是错的。这类小坑不致命但很烦我一般连完先预览前十条记录确认字段名字对得上再往下做。子串是另一个常用功能。它的作用是给已有内容追加一段独立变化的部分主内容变了它不一定跟着变。创建路径是双击元素 → 属性 → 高级 → 添加子串按向导走。典型场景是同一批产品编号后面挂不同的包装规格后缀主编号从数据库来后缀用子串手工维护。4.3 每条记录打印数量与序列打印数据库里不是每条记录都只打一张。有的订单要打三张有的记录压根不用打。BarTender 在「打印」对话框的「选择记录」里提供了控制入口记录列表里序号后面那一列就是每条记录的打印份数可以逐条改也可以直接绑数据库字段。绑字段的路径是「打印」→ 标签份数后面的「选项」→ 数据源 → 选数据库里表示数量的那个字段。前面视图里的PrintQty就是干这个用的。这样一来打印份数由业务数据决定操作员不用记谁打几张。序列打印是不依赖数据库也能做批量规律输出的功能。文档里举的例子很典型起始 0000增量 2打到 2000 停止。配置路径是双击标签元素 → 更多选项 → 序列 → 类型选自动数字或字母间隔填 2。打印份数这里有个容易算错的地方从 0 开始、步长 2、到 2000 结束一共是 (2000 - 0) / 2 1 1001 张所以份数要填 1001填 1000 会少最后一张填 2000 会直接翻倍。注意序列的「间隔」是步长不是份数两个概念在界面上离得很近配错了打出来的号会跳号或者重号返工的时候整批标签都得作废。4.4 共享名改一个全跟着变共享名的作用是把两个及以上的元素绑在一起像触发器一样其中一个变了同名的其他元素同步变。文档里的例子是上面一个文本、下面一个条码文本改了前几位条码对应的位也跟着变。配置入口在元素属性的「共享/名称」页给要联动的元素填同一个共享名即可。这套机制在需要同时出「人读文本」和「机读条码」的标签上特别好用省掉了两次输入带来的不一致风险。要注意的是共享名是文档级的同一个模板里重名会互相干扰命名上带个前缀区分用途比如SN_MAIN、SN_BATCH后期维护不至于抓瞎。5. 避坑与排查装完跑不通的五个现场5.1 现象任务显示已发送打印机毫无反应原因基本锁定在端口。要么协议选成了 LPR 但打印机只认 RAW要么端口号不是 9100要么打印机 IP 被 DHCP 换掉了但端口还指着老地址。这三种情况在 BarTender 里表现完全一样都是「已发送」然后没有任何输出。解决顺序是先用Test-NetConnection 192.168.1.50 -Port 9100确认网络通不通再回到打印机属性的端口页看配置最后核对打印机面板上显示的 IP。IP 变动频繁的现场我会让网络管理员给打印机做地址保留比每次出问题再改端口省事得多。5.2 现象条码能打出来但扫不出来或者边缘糊原因通常有两个一是分辨率不匹配模板按 203 dpi 设计却发到了 300 dpi 的机器上条码被拉伸二是打印浓度和速度参数没调热转印温度不够墨带转移不充分。解决办法是先确认打印机实际 dpi在驱动属性里对齐然后在 BarTender 的条码属性里看「密度」设置窄条宽度不要低于 2 个点。浓度和速度在驱动首选项里调每次只动一个参数打一张用扫码枪验一张别一次改五项然后不知道是哪项起的作用。5.3 现象换机器迁移后字体全变了或者显示成方块原因是模板里引用的 Windows 字体在目标机器上没装BarTender 回退到默认字体中文直接变成方块。如果原来用的是打印机内嵌字体换了一台不同型号的机器同样会丢。解决方法是迁移前导出一份模板用到的字体清单在目标机上逐个核对安装如果两台机器型号一致把字体预先下载到打印机里一致性最好。我现在的习惯是模板交付时附一份字体清单和打印机型号说明后面换人接手不至于从头猜。5.4 现象数据库连上了但打印出来的字段全是错的或者错位原因是字段映射和分隔符设置。文本数据库最常见分隔符选了逗号实际文件是制表符或者首行字段名选项勾错字段列表变成 F1、F2。Excel 则常见于工作表选错连到了隐藏的旧 Sheet。解决办法是连完立刻在数据库设置里预览记录确认列名和内容对得上。文本文件建议统一用 UTF-8 编码保存避免中文乱码。字段拖拽绑定之后别只看设计界面一定要走一次「打印预览」预览里错位说明绑定关系本身有问题跟打印机无关。5.5 现象RFID 标签纸出来了但芯片里没写进数据RFID 标签和普通条码标签不是一回事除了印面内容还要往芯片里写数据涉及编码器类型、写入位置、以及标签的芯片规格。驱动里编码器选项没配对表现就是纸出了、芯片是空的扫码枪读不到。解决办法是在打印机驱动的设备设置里确认 RFID 编码器已启用并选对型号然后在 BarTender 里把要写入的字段绑定到 RFID 对象而不是普通文本对象。写完必须用读写器回读验证不能只看打印出来那面。这一块我吃过亏第一批两百张全部白打从那以后 RFID 一律先打三张回读确认再放量。6. 装完怎么验证一台打印机的三步自检装完不等于跑通我坚持走三步验证缺一步都不算交付完成。第一步打静态标签模板里不放任何变量纯文本加一个固定条码验证驱动、端口、字体这条基础链路。第二步打数据库标签连上前面那个视图只取三条记录验证字段映射和字号自动调整是否生效。第三步打序列标签起始 0000、步长 2、份数 101验证序列参数和份数计算没算错。三步都过之后还有一件事值得做命令行验证。BarTender 自带的 Commander 就是干这个的它能把模板和打印动作串成一条命令适合挂到定时任务或者上游系统的调用里。:: /F 指定模板文件/P 触发打印/PRN 指定目标打印机/X 完成后退出 C:\Program Files\Seagull\BarTender\bartend.exe /FD:\Labels\verify.btw /P /PRNZebra_ZT230 /X :: 查打印队列里是否还有卡住的任务排查静默失败 cscript //nologo %WINDIR%\System32\Printing_Admin_Scripts\zh-CN\prnjobs.vbs -l -p Zebra_ZT230/F后面跟模板绝对路径/P是执行打印/PRN指定打印机名名字必须和系统里注册的完全一致差一个空格都会失败/X让程序打印完自动退出不加的话进程会挂在后台。不同版本的命令行开关可能略有出入第一次用之前先看一眼该版本自带的帮助说明别照搬。prnjobs.vbs -l用来列队列里的任务配合-p指定打印机能看到有没有任务卡在「正在打印」状态——这是排查静默失败最快的手段。验证通过后把这三步的命令、模板路径、打印机名、字体清单一起写进部署记录。我现在的习惯是每台新机器交付前都强制走一遍这三步哪怕它跟上一台配置一模一样因为翻车往往就发生在「应该一样」的地方。希望帮到你。本文还有配套的精品资源点击获取