请教一下,使用C#调用POSDLL.dll使用佳博打印的问题

问题描述

请教一下,使用C#调用POSDLL.dll使用佳博打印的问题OPOSOPOS=newOPOS();boola=OPOS.OpenUSBPort("USB001");publicboolOpenUSBPort(stringUSBPortName){POS_IntPtr=POS_Open(USBPortName,0,0,0,0,POS_OPEN_BYUSB_PORT);if((int)POS_IntPtr!=-1)returntrue;elsereturnfalse;}[DllImport("POSDLL.dll",CharSet=CharSet.Ansi)]publicstaticexternIntPtrPOS_Open([MarshalAs(UnmanagedType.LPStr)]stringlpName,uintnComBaudrate,uintnComDataBits,uintnComStopBits,uintnComParity,uintnParam);不管杂样都是不成功,都是返回-1我查看了控制面板中的打印机端口是USB001打印机型号为:佳博2120TF打小便签

解决方案

解决方案二:
///<summary>///打开POS机的端口开始会话///</summary>///<paramname="lpName">///指向以null结尾的打印机名称或端口名称。///当参数nParam的值为POS_COM_DTR_DSR、POS_COM_RTS_CTS、POS_COM_XON_XOFF或POS_COM_NO_HANDSHAKE时,“COM1”,“COM2”,“COM3”,“COM4”等表示串口;///当参数nParam的值为POS_OPEN_PARALLEL_PORT时,“LPT1”,“LPT2”等表示并口;///当参数nParam的值为POS_OPEN_BYUSB_PORT时,“BYUSB-0”、“BYUSB-1”、“BYUSB-2”、“BYUSB-3”等表示USB端口。///当参数nParam的值为POS_OPEN_PRINTNAME时,表示打开指定的打印机。///当参数nParam的值为POS_OPEN_NETPORT时,表示打开指定的网络接口,如“192.168.10.251”表示网络接口IP地址</param>///<paramname="nComBaudrate">串口通信需要的波特率</param>///<paramname="nComDataBits">串口通信需要的数据位</param>///<paramname="nComStopBits">串口通信需要的停止位</param>///<paramname="nComParity">串口通信需要的是否要奇偶校验</param>///<paramname="nParam">指向以null结尾的打印机名称或端口名称。///参数nParam的值为POS_COM_DTR_DSR、POS_COM_RTS_CTS、POS_COM_XON_XOFF或POS_COM_NO_HANDSHAKE时,///“COM1”,“COM2”,“COM3”,“COM4”等表示串口;///当参数nParam的值为POS_OPEN_PARALLEL_PORT时,“LPT1”,“LPT2”等表示并口;///当参数nParam的值为POS_OPEN_BYUSB_PORT时,“BYUSB-0”、“BYUSB-1”、“BYUSB-2”、“BYUSB-3”等表示USB端口。///当参数nParam的值为POS_OPEN_PRINTNAME时,表示打开指定的打印机。</param>///<returns>如果函数调用成功,返回一个已打开的端口句柄。如果函数调用失败,返回值为INVALID_HANDLE_VALUE(-1)。

时间: 2024-09-14 07:41:09

请教一下,使用C#调用POSDLL.dll使用佳博打印的问题的相关文章

使用JNative调用C# DLL文件 提示未找到方法

问题描述 最近项目需要使用一个C#的DLL文件的方法,用JNative去实现的,JNativeCpp.dll和需要调用的dll文件都放到windows/system32下了,然后newJNative("ABC.Portal.Common.dll","Token");提示这个Token方法找不到.org.xvolks.jnative.exceptions.NativeException:FunctionTokennotfoundatorg.xvolks.jnative

c#-C# 调用c++ dll问题,在线等,急~~~

问题描述 C# 调用c++ dll问题,在线等,急~~~ 请教大神, C# 如何调用C++的dll. 试了N次没成功,dll可以调用成功,但是传入的参数一直提示错误,请教大神如何调用方法,参数如何传,本人小白,大神最好能给点例子!感激不尽~~~. 解决方案 调用不成功是说直接找不到dll里的函数,还是说函数调用完返回的结果是错误的? 解决方案二: 参考:https://msdn.microsoft.com/zh-cn/library/2x8kf7zx.aspx 解决方案三: 参数是否传正确了,应

请问c#如何调用ntdll.dll中的ntquerysysteminformation函数??

问题描述 请问c#如何调用ntdll.dll中的ntquerysysteminformation函数??google了一下函数原形ntsysapintstatusntapintquerysysteminformation(inuintsysteminformationclass,//信息类型outpvoidsysteminformation,//缓冲指针inulongsysteminformationlength,//缓冲的字节大小outpulongreturnlengthoptional//写

异常-c# 程序调用外部dll文件对采集模块进行读写,不定时出现以下错误

问题描述 c# 程序调用外部dll文件对采集模块进行读写,不定时出现以下错误 问题签名: 问题事件名称: BEX 应用程序名: NangGang11.20.vshost.exe 应用程序版本: 9.0.21022.8 应用程序时间戳: 47316898 故障模块名称: MSVCR80.dll 故障模块版本: 8.0.50727.6195 故障模块时间戳: 4dcddbf3 异常偏移: 00008aa0 异常代码: c000000d 异常数据: 00000000 解决方案 光给出一个异常信息,天知

C# 制作Com组件:java调用.net DLL的方法

本文将详细为大家介绍一个java调用.net DLL的方法,以实现特殊的客户的特殊要求:"在Java项目中必须使用其提供的用.net写的DLL加密机制!" 环境与工具: ◆.net framework 3.5 C# ◆java jdk1.5, Tomcat 5.5 ◆jacob-1.15-M3 实现例子: 一.C# 制作Com组件 新建一个Class 项目,取名TestCom 代码 using System;  using System.Collections.Generic;  us

跨越语言的障碍:C++调用C# DLL

当C#项目需要引用C++dll的时候可以直接使用DLLIMPORT来进行调用.而反向的话,C++项目并不能简单靠引用来使用C#DLL.因为C++项目默认配置是没有公共语言运行库支持的.所以我们需要更改一些配置来进行对C# dll的调用.步骤如下: 首先我们完成C# dll开发: namespace Csharp { public class Class1 { public string Name = string.Empty; public Class1() { Name = "We can u

JAVA调用动态链接库DLL:JNative学习

JAVA调用动态链接库DLL的方法有:JNI(Java Native Interface),JInvoke,JNative(Java to native interface),JNI是JAVA自身提供的方法:JInvoke从何而来不得而知,好像还需要注册付费的,64位的JDK.JIR环境下运行不了,在VMware下安装的WindowsXP下同样有问题:JNative是开源的,但相关资料文档也特别的少,好像已经停止更新了.JNative源码地址:http://jnative.cvs.sourcef

C#实现动态调用Windows DLL

调用方法: object obj = WinDllInvoke("Kernel32.dll", "Beep", new object[] { 750, 300 }, typeof(void)); 函数代码: 1 [System.Runtime.InteropServices.DllImport("kernel32")] 2 private static extern IntPtr LoadLibrary(string lpLibFileName)

struct-关于C#调用C++dll的问题

问题描述 关于C#调用C++dll的问题 在c#调用dll中遇到了个巨坑,请大侠&大神帮忙c++定义://! 长度为10的字符串typedef char TAPISTR_10[11];typedef char TAPICHAR;typedef char TAPIDTSTAMP[24]; //! int 32typedef int TAPIINT32;//! unsigned 32typedef unsigned int TAPIUINT32;//! int 64typedef long long