c# 调用DLL(开发小票打印机)
最近买了一台芯烨 的80宽度网络小票打印机,计划做一个类似后厨的实时接单打印程序,即每接到一个订单,系统就自动打印小票,驱动配货人员尽快工作。
厂家提供了DLL文件,一切从0开始摸索。
首先是要引入DLL,使用DllImport,指定引用的DLL名称,方式,编码格式等 ;
[DllImport("user32.dll", EntryPoint = "MessageBoxA")] static extern int MsgBox(int hWnd, string msg, string caption, int type); [DllImport("JsPrinterDll.dll", EntryPoint = "uniInitNetSev",CharSet =CharSet.Ansi,CallingConvention =CallingConvention.StdCall)] static extern bool uniInitNetSev(); [DllImport("JsPrinterDll.dll", EntryPoint = "uniConnectNetPortByIp", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)] static extern int uniConnectNetPortByIp(string ip, int port = 9100, int Timeout = 5000); [DllImport("JsPrinterDll.dll", EntryPoint = "uniPrintImg1b2a", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)] static extern int uniPrintImg1b2a(int fs,string imgpath); private void button1_Click(object sender, EventArgs e) { bool openPrint = uniInitNetSev(); if (!openPrint) { MessageBox.Show("打印机初始化失败"); return; } int printState = uniConnectNetPortByIp("100.1.1.219", 9100, 5000); if (printState <= 0) return; int nret = uniPrintImg1b2a(printState,"test.bmp"); if (nret <= 0) { return; } MessageBox.Show("测试打印OK", nret.ToString()); }
活到老,学到老。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
2020-04-03 Centos 7 安装 Postgresql 12
2018-04-03 spring mvc +easy ui +Mybatis 录入数据