通过程序(C# C/S)调用Sato Label Gallery标签模板 打印
近期公司导入一个新项目,需要用到通过程序管理标签信息并能及时的打印出来。
公司硬件环境: PC、Sato标签打印机
软件环境: Win7 32Bit
开发环境: VS2010 32Bit
通过查看Label Gallery技术文件,发现可以通过ActiveX与DDL的方式分别编写WEB或C/S程序来调用标签模板并访问模板内的变量,然后打印。
但使用VS2010开发时需要使用到Label Gallery软件提供的一个DLL文件。
PS: 在Label Gallery 3 的版本中DLL叫 LabelGalleryPlus3WR.dll,(这个DLL在Label Gallery 3的安装目录内可以找到,与程序EXE在一个目录内)
技术说明文件内介绍的DLL名称是LabelGalleryPlus2WR.dll,不知道是不是因为是之前的版本,这里就不管它了。
需要说明的是技术文件内是需要导入LabelGalleryPlus3WR.dll这个文件,可是我下载到的官方DEMO内却导入是LabelGalleryEngine3WR.dll这个DLL文件。
如果想使用LabelGalleryPlus3WR.dll,不想去再另外下载的,也可以直接引用LabelGalleryPlus3WR.dll。
LabelGalleryEngine3WR.dll文件是一个DEMO程序内包含的,DOMO程序下载地址:
http://www.satoworldwide.com/sites/satoworldwide_com/Uploads/Files/LabelGallery/LabelGallery_IntegrationPack3.zip
PS:添加DLL引用时,可以系统会报错,无法引用 ,这个时候请先使用Regsvr32 进行DLL注册,然后再引用DLL即可。
引用成功后,具体的实现代码如下(只是一个测试程序,所以没有太复杂的处理):
if (txtOpenFile.Text.Trim() == "") //标签模板文件
{
MessageBox.Show("Please Select file!");
return;
}
LGApp objApp= new LGApp() ; //实例化读取标签的对象
LGLabel ObjLabel = objApp.LabelOpenEx(txtOpenFile.Text); //读取标签
try
{
if (txtVar1.Text.Trim() != "" && txtVarValue1.Text.Trim() != "") //根据情况给标签内的变量赋值 txtVar1代表变量名 txtVar1Value代表变更值
{
ObjLabel.Variables.FindByName(txtVar1.Text.Trim()).SetValue(txtVarValue1.Text.Trim());
}
}
catch
{
MessageBox.Show("Variable1 name Or Variable1 value is invalid");
}
try
{
if (txtVar2.Text.Trim() != "" && txtVarValue2.Text.Trim() != "") //根据情况给标签内的变量赋值 txtVar2代表变量名 txtVar2Value代表变更值
{
ObjLabel.Variables.FindByName(txtVar2.Text.Trim()).SetValue(txtVarValue2.Text.Trim());
}
}
catch
{
MessageBox.Show("Variable2 name Or Variable2 value is invalid");
}
int PrintQty;
try
{
PrintQty = int.Parse(txtQuantity.Text);
}
catch {
PrintQty = 0;
}
if (PrintQty > 0)
{
ObjLabel.Print(txtQuantity.Text); //打印 传入打印的数量
objApp.LabelClose(0); //关闭引用
}
通过程序(C# C/S)调用Sato Label Gallery标签模板 打印相关推荐
- java sleep不能使用_java无主窗口GUI程序主线程不能调用sleep(long)方法,会产生异常...
java无主窗口GUI程序主线程不能调用sleep(long)方法,会产生异常. public class fxframe{ public static void main(String[] args ...
- 详解微信开放平台第三方平台代小程序开发业务基本接口调用逻辑
详解微信第三方小程序代开发 微信申请第三方之后可以获取授权方的很多权限,主要的是生码和待开发,生码的第三方授权之前已经写了一篇文章,最近做了小程序待开发,总结一下写下来供大家参考 由百牛信息技术bai ...
- linux backtrack函数,Linux调用backtrack函数打印程序崩溃时的调用堆栈
可以给自己的程序都加上这个东西,便于快速的找到错误吧,看到别人都是这么用的 #include #include #include #include //signal 函数用法参考http://www. ...
- 在Linux环境下用C语言编写一个乘法程序mult,从命令行接收两个数字,然后输出其乘积;再用C语言编写一个exec1程序,在程序中使用execvp调用mult程序计算5与10的乘积。
在Linux环境下用C语言编写一个乘法程序mult,从命令行接收两个数字,然后输出其乘积:再用C语言编写一个exec1程序,在程序中使用execvp调用mult程序计算5与10的乘积. 1.mult. ...
- 微信小程序实现分享里调用接口
微信小程序实现分享里调用接口 在开发微信小程序的时候,有一个需求,在点击分享按钮的时候,调用后台的接口,来获取一个分享的值,在分享的时候在分享链接里拼这个值. 初始的想法 在onShareAppMes ...
- winform程序一启动抛出异常--调用目标发生异常
winform程序一启动抛出异常--调用目标发生异常 参考文章: (1)winform程序一启动抛出异常--调用目标发生异常 (2)https://www.cnblogs.com/shensigzs/ ...
- 微信小程序体验版无法调用API接口,显示空白
微信小程序体验版无法调用接口 解决方案: 当扫码之后,前往体验版,右上角三个点,点击一,然后划到最后,点击开发调试,打开调试,完美解决.
- 微信小程序的一些数据调用方式
1.模板数据的调用 一张图了解一下在wxml页调用预先定义好的模板: 可以看到上面调用了两个模板,数据调用却是不同的,obj是一个对象,对象内包含多个键值对形式的数据: tabbar是一个一维数组,每 ...
- Java:关于跳出两层循环的方法以及Label(标签)
Java:关于跳出两层循环的方法以及Label(标签) HR曾问过我这样一个问题:Java中,如何跳出两层循环? 虽然当时没有说我的答案是错的,但也没完全认可.以下为对该问题的重新研究. 1. Lab ...
最新文章
- #6229. 这是一道简单的数学题(反演 + 杜教筛)
- guice注入带参构造器_带有Guice的富域模型
- strocli64 源码_storcli 简易使用介绍
- java反射源码_java反射技术详解附源码
- 吴军:为什么计算机不是万能的
- Linux内核热补丁方案对比
- OpenGL基础29:深度测试
- 集异璧摘录:pq系统-加法-乘法-合数-素数
- ZZULIOJ.1092:素数表(函数专题)
- qq令牌64位密钥提取_qq令牌绑定工具无需密码2020
- 漫谈Go语言与区块链
- 统一检测和分割任务!港科大清华IDEA提出基于Transformer统一目标检测与分割框架Mask DINO,效果SOTA!...
- 【略有料】JDBC Statements, PreparedStatement和CallableStatement语句
- 两个瓶子水怎样一样多_大班科学领域数学活动 | 一样多的水(容积守恒)
- Linux 清空文件内容
- 移动端购物车数据重新编译后数据消失
- TSN(temporal segment networks)环境配置
- cron的使用(二)
- H264_Lite高清视频编码器/解码器IP核(FPGA/ASIC通用)
- C#知识点的总结,代码规范,json,ajax ,数据库,cookie,session等等