在VS中添加bartender的COM组件引用后(一定要添加,否则会提示找不到BarTender.Application):

 1 /// <summary>
 2         /// Bartender模板打印
 3         /// </summary>
 4         /// <param name="MdFilePath">模板文件路徑</param>
 5         /// <param name="NamedStr">模板字段名數組</param>
 6         /// <param name="NamedValue">模板字段值數組</param>
 7         public bool BarTenderPrint(string MdFilePath, List<string> NamedStr, List<string> NamedValue)
 8             {
 9             bool result = false;
10 
11             string prtFile = MdFilePath;//@"D:\visitor.btw";
12             BarTender.Application bt = new BarTender.Application();
13             BarTender.Format btFmt;
14             try
15                 {
16                 btFmt = bt.Formats.Open(prtFile, false, "");
17                 for (int i = 0; i < NamedStr.Count; i++)
18                     {
19                     btFmt.SetNamedSubStringValue(NamedStr[i], NamedValue[i]);
20                     }
21                 btFmt.PrintOut(true, true); //第二个false设置打印时是否跳出打印属性
22                 btFmt.Close(BarTender.BtSaveOptions.btDoNotSaveChanges); //退出时否保存标签        
23                 //btFmt.Close(BarTender.BtSaveOptions.btSaveChanges); //退出时是否保存标签
24                 bt.Quit(BarTender.BtSaveOptions.btSaveChanges);//界面退出时同步退出bartender进程
25                 result = true;
26                 }
27             catch (Exception err)
28                 {
29                 throw new Exception(err.Message + err.Source + err.StackTrace);
30                 }
31             finally
32                 {
33                 btFmt = null;
34                 bt = null;
35                 }
36             return result;
37             }

如是遇到标签等设置无误,但仍然无法打印时,有可能存在以下问题:

1.打印机驱动有问题,需重装驱动;

2.bartender在企业版中需要设置Seagull License Server:打开bartender,在工具—>一般选项中—>授权管理,设置完成后点击确定即可。