金橙子MarkEzd.dll二次开发问题

吃恩Chen 2016-05-20 12:20:20
使用金橙子MarkEzd.dll做二次开发,C#动态调用dll库,初始化等接口函数调用都没问题,但是调用Lmc1-LoadEzdFile来加载文件,总是返回错误12读取文件失败,这是什么原因,是不是要改成Unicode编码
...全文
3008 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
leon_zeng0 2019-07-25
  • 打赏
  • 举报
回复
应该是MarkEzd.dll 应该在金橙子程序目录里,版本应该一致。 目前, 我在2.5(2.5.3) 和 2.7 (2.7.6)下有对应的这个文件,运行成功。在2.9, 2.12, 下不成功。不知谁可以给我。
zhe_jiang 2019-07-03
  • 打赏
  • 举报
回复
#define LMC1_ERR_READFILE 12 //读文件错误
路径问题
qq_31786887 2019-01-20
  • 打赏
  • 举报
回复
我用EzCad2.7.0,用Demo也是无法装载Markezd.dll, exe和软件都在同一目录,可怎解决?谢谢
linxiao0915 2018-09-25
  • 打赏
  • 举报
回复
但是我现在遇到个问题 int nErr = MarkEzdDll.Initialize(dir, false); 会报错21 int nErr = MarkEzdDll.Initialize(dir, true); 可以初始化成功
linxiao0915 2018-09-25
  • 打赏
  • 举报
回复
[DllImport("MarkEzd.dll", EntryPoint = "lmc1_Initial", CharSet = CharSet.Auto, CallingConvention = CallingConvention.Cdecl)]
// [DllImport("MarkEzd.dll")]
public static extern int lmc1_Initial(string strEzCadPath, bool bTestMode, IntPtr hOwenWnd);


private void Form1_Load(object sender, EventArgs e)
{
try
{
String dir = Application.StartupPath;
int nErr = MarkEzdDll.Initialize(dir, false);
MessageBox.Show("Initial=" + nErr.ToString());

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
this.Close();
}
}
吃恩Chen 2018-01-23
  • 打赏
  • 举报
回复
DllImport导入路径一定要正确,然后是导入方法的参数,C++的参数一定要和C#的对应起来,尤其是指针!这两点对了基本没问题了的
linxiao0915 2018-01-12
  • 打赏
  • 举报
回复
大神 我也遇到这个问题那个DLL文件打不开 怎么解决
吃恩Chen 2018-01-08
  • 打赏
  • 举报
回复
很久远的问题了,开发资料和dll在网上都能找到,如果文件导入不成功可能是导入方式不对
qq_38014238 2017-12-25
  • 打赏
  • 举报
回复
我找到解决办法了 有问题在我的CSDN留言
talent0722 2017-09-14
  • 打赏
  • 举报
回复
能不能分享一份源代码
dh429005 2017-09-06
  • 打赏
  • 举报
回复
5楼 我也是这个问题 我想应该是最后一个参数赋值的问题 还在摸索 有没有大神解决了的 求指教
tuandan0552 2017-08-21
  • 打赏
  • 举报
回复
能不能分享一份金橙子打标卡的开发文档?十分感谢!448676523@qq.com
InvokeLife 2017-07-21
  • 打赏
  • 举报
回复
大神,我正在用C#做金橙子二次开发,一直“无法加载 DLL“MarkEzd.dll”,能告诉我你是怎么做到的吗?EZcard里的文件都拷贝到应用程序的文件夹了。代码我是这么写的: [DllImport("MarkEzd.dll", EntryPoint = "lmc1_Initial", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.StdCall)] public static extern int lmc1_Initial(string strEzCadPath, bool bTestMode, IntPtr hOwenWnd);
小光快跑 2017-07-10
  • 打赏
  • 举报
回复
5楼,我遇到情况和你一样,现在解决了吗?
2924胖子 2017-03-30
  • 打赏
  • 举报
回复
楼主,是不是必须经过授权的金橙子卡才能用二次开发?我有一块儿金橙子的卡,用了网上下载的markezd.dll的二次开发库,每次初始化的时候就不通过。。第一次不知道怎么回事返回了一个21值。其他试了一些函数,关闭卡的返回是0,其他的返回是11.没有初始化。。。。 我就想问一下,一直初始化不通过是什么毛病?板卡的问题还是代码的问题?
yunhaier 2016-09-07
  • 打赏
  • 举报
回复
楼主的问题解决么?求指导,QQ 515544106
yepeng2014 2016-07-29
  • 打赏
  • 举报
回复
楼主的头像为何如此逗
神探布杰 2016-06-22
  • 打赏
  • 举报
回复
我曹,这种专业领域的问题也能在CSDN看到! 说明书我看过,明确要求用Unicode编码。 路径不要有中文,bool用int代替,0假1真,bool是一个字节的 贴上错误码,方便你自查: #define LMC1_ERR_SUCCESS 0 //成功 #define LMC1_ERR_EZCADRUN 1 //发现EZCAD在运行 #define LMC1_ERR_NOFINDCFGFILE 2 //找不到EZCAD.CFG #define LMC1_ERR_FAILEDOPEN 3 //打开LMC1失败 #define LMC1_ERR_NODEVICE 4 //没有有效的lmc1设备 #define LMC1_ERR_HARDVER 5 //lmc1版本错误 #define LMC1_ERR_DEVCFG 6 //找不到设备配置文件 #define LMC1_ERR_STOPSIGNAL 7 //报警信号 #define LMC1_ERR_USERSTOP 8 //用户停止 #define LMC1_ERR_UNKNOW 9 //不明错误 #define LMC1_ERR_OUTTIME 10 //超时 #define LMC1_ERR_NOINITIAL 11 //未初始化 #define LMC1_ERR_READFILE 12 //读文件错误 #define LMC1_ERR_OWENWNDNULL 13 //窗口为空 #define LMC1_ERR_NOFINDFONT 14 //找不到指定名称的字体 #define LMC1_ERR_PENNO 15 //错误的笔号 #define LMC1_ERR_NOTTEXT 16 //指定名称的对象不是文本对象 #define LMC1_ERR_SAVEFILE 17 //保存文件失败 #define LMC1_ERR_NOFINDENT 18 //找不到指定对象 #define LMC1_ERR_STATUE 19 //当前状态下不能执行此操作
feigesss 2016-06-14
  • 打赏
  • 举报
回复
楼主你好,我调用MarkEzd.dll的时候初始化总是失败,能方便告诉我是哪里的变量定义有问题吗? 我对hOwenWnd这个变量的用法不是很了解。 [DllImport("MarkEzd.dll", EntryPoint = "lmc1_Initial", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.StdCall)] public static extern int lmc1_Initial( string strEzCadPath, bool bTestMode, IntPtr hOwenWnd); private void button1_Click(object sender, EventArgs e) { int dwErrCde;//初始化成功或错误 string _strEzCadPath = @"G:\Ezcad\";//存储ezcad.exe所在的目录的全路径名称 bool _bTestMode = true;//是否为测试模式 IntPtr _hOwenWnd =this.Handle ;//用户输入焦点的窗口,用于检测用户暂停消息 dwErrCde = lmc1_Initial( _strEzCadPath, _bTestMode, _hOwenWnd);//设备初始化 } 到设备初始化时错误提示: 调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。

110,526

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧