国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C# TSC打印二維碼和條形碼的實現方法

2020-01-24 00:21:54
字體:
來源:轉載
供稿:網友

效果圖

開發、使用環境說明

安裝TSC_7.3.8_M-3.exe打印機驅動,安裝時選擇對應的ttp 244 pro

將TSCLIB.dll復制到C:/Windows/system

驅動安裝說明

選擇下一步

選擇安裝路徑,默認即可,選擇下一步

選擇安裝打印機,選擇下一步

選擇其他,點擊下一步

選擇對應的打印機型號,點擊下一步

選擇USB端口,點擊下一步

直接默認即可,點擊下一步

驅動安裝完成!

TSCLIB.cs代碼:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Runtime.InteropServices;namespace WindowsFormsPrint{ public class TSCLIB_DLL { [DllImport("TSCLIB.dll", EntryPoint = "about")] public static extern int about(); [DllImport("TSCLIB.dll", EntryPoint = "openport")] public static extern int openport(string printername); [DllImport("TSCLIB.dll", EntryPoint = "barcode")] public static extern int barcode(string x, string y, string type,   string height, string readable, string rotation,   string narrow, string wide, string code); [DllImport("TSCLIB.dll", EntryPoint = "clearbuffer")] public static extern int clearbuffer(); [DllImport("TSCLIB.dll", EntryPoint = "closeport")] public static extern int closeport(); [DllImport("TSCLIB.dll", EntryPoint = "downloadpcx")] public static extern int downloadpcx(string filename, string image_name); [DllImport("TSCLIB.dll", EntryPoint = "formfeed")] public static extern int formfeed(); [DllImport("TSCLIB.dll", EntryPoint = "nobackfeed")] public static extern int nobackfeed(); [DllImport("TSCLIB.dll", EntryPoint = "printerfont")] public static extern int printerfont(string x, string y, string fonttype,   string rotation, string xmul, string ymul,   string text); [DllImport("TSCLIB.dll", EntryPoint = "printlabel")] public static extern int printlabel(string set, string copy); [DllImport("TSCLIB.dll", EntryPoint = "sendcommand")] public static extern int sendcommand(string printercommand); [DllImport("TSCLIB.dll", EntryPoint = "setup")] public static extern int setup(string width, string height,   string speed, string density,   string sensor, string vertical,   string offset); [DllImport("TSCLIB.dll", EntryPoint = "windowsfont")] public static extern int windowsfont(int x, int y, int fontheight,   int rotation, int fontstyle, int fontunderline,   string szFaceName, string content); //打開打印機端口,并進行相關設置 public static void openportExt() {  TSCLIB_DLL.openport("TSC TTP-244 Pro");//找打打印機端口  TSCLIB_DLL.sendcommand("SIZE 60 mm,30 mm");//設置條碼大小  TSCLIB_DLL.sendcommand("GAP 2 mm,0");//設置條碼間隙  TSCLIB_DLL.sendcommand("SPEED 4");//設置打印速度  TSCLIB_DLL.sendcommand("DENSITY 7");//設置墨汁濃度  TSCLIB_DLL.sendcommand("DERECTION 1");//設置相對起點  TSCLIB_DLL.sendcommand("REFERENCE 3 mm,3 mm");//設置偏移邊框  TSCLIB_DLL.sendcommand("CLS");//清除記憶(每次打印新的條碼時先清除上一次的打印記憶) } //打印在用車檔案二維碼 public static void printVehicleCode(string str_hetong, string str_zhengjian, string str_name) {  char space = (char)(32);  string codeValue = str_hetong + space + str_zhengjian;  TSCLIB_DLL.sendcommand("CLS");//需要清除上一次的打印記憶  TSCLIB_DLL.sendcommand("QRCODE 260,20,H,7,A,0,M2,S7,/"" + codeValue + "/"");  TSCLIB_DLL.windowsfont(240, 100, 24, 180, 0, 0, "黑體", str_hetong);  TSCLIB_DLL.windowsfont(240, 140, 24, 180, 0, 0, "黑體", str_zhengjian);  TSCLIB_DLL.windowsfont(240, 180, 24, 180, 0, 0, "黑體", str_name);  TSCLIB_DLL.printlabel("1", "1"); } //打印財務條形碼 public static void printFinanceCode(string str_Date, string str_siteNo,  string str_siteName, string str_Num, string str_Name, int count) {  for (int i = 0; i < count; i++)  {  char Num = (char)(i + 65);  char space = (char)(32);  string value = str_Date + space + str_siteNo + space + str_Num + space + Num;  string txt = str_Date + space + str_siteName + space + str_Num + space + str_Name + space + Num;  TSCLIB_DLL.sendcommand("CLS");//需要清除上一次的打印記憶  TSCLIB_DLL.barcode("40", "50", "128", "160", "0", "0", "2", "2", value);  TSCLIB_DLL.windowsfont(440, 35, 24, 180, 0, 0, "黑體", txt);  TSCLIB_DLL.printlabel("1", "1");  } } //關閉打印機端口 public static void closeportExt() {  TSCLIB_DLL.closeport(); } }}

打印二維碼:

private void print_Click(object sender, EventArgs e) {  try  {  print.Enabled = false;  base.DoWork(DoPrint);  print.Enabled = true;  }  catch (Exception ex)  {  // FileLogHelper.WriteInfoLog(ex.ToString());  MessageBox.Show(ex.ToString());  } } private void DoPrint(object sender, EventArgs e) {  DataGridViewSelectedRowCollection rows = ArchivesView.SelectedRows;  if (rows.Count <= 0)  {  MessageBox.Show("請先選擇數據項!");  return;  }  TSCLIB_DLL.openportExt();  foreach (DataGridViewRow dr in rows)  {  TSCLIB_DLL.printVehicleCode(dr.Cells[1].Value.ToString(), dr.Cells[2].Value.ToString(), dr.Cells[3].Value.ToString());  }  TSCLIB_DLL.closeportExt(); }

C#調用dll提示"試圖加載格式不正確的程序"解決方法

程序在32位操作系統上運行正常,在64位操作系統上運行讀卡功能提示”試圖加載格式不正確“。

程序在64位操作系統上運行正常,在64位操作系統上運行讀卡功能提示”試圖加載格式不正確“。

--------------------------------------------------------------------------------------------

點擊項目屬性,把目標平臺Any CPU 設置為X86(32位操作系統)或者X64(64位操作系統)

按照上面解決方案可能會有下面的問題:

C# form繼承問題 : 提示 無法加載基類 ;請確保已引用該程序集并已生成所有項目。

把 生成 - 目標平臺 改成 x86或者Any CPU ,重新生成一次,Form可正常編輯。

所以新的解決方案是:選擇Any CPU 把下面打勾的去掉

以上這篇C# TSC打印二維碼和條形碼的實現方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 子洲县| 介休市| 沁源县| 枞阳县| 腾冲县| 鹤庆县| 湖北省| 衡山县| 乌海市| 蕉岭县| 镇原县| 福鼎市| 凤台县| 澳门| 疏勒县| 淅川县| 祁东县| 富裕县| 河间市| 梁河县| 隆子县| 九龙县| 哈尔滨市| 丹东市| 合川市| 大同市| 平阴县| 新平| 娱乐| 龙江县| 彰化市| 启东市| 万全县| 西华县| 泗水县| 嘉荫县| 西乌珠穆沁旗| 福鼎市| 安宁市| 读书| 额敏县|