100分镭雕二次开发求助: 金橙子 Ezcad MarkEZD.DLL

cyg17173 2017-09-19 12:50:03
VS2015 使用C#调用MarkEZD.DLL异常,找不到该DLL。
VC++ 6.0 调用,发现返回值是-1,还是找不到。
然后,用Depends 分析,发现少了7个DLL,网上逐一下载,最后发现DCOMP.DLL异常,如下图所示:


请各位专家帮忙测试下,或许是我下载的DLL 和头文件有问题,附百度网盘附件下载。
下载压缩包有2个DLL和1个头文件。
https://pan.baidu.com/s/1jIzMyEU

附CPP文件

  1. #include "stdafx.h"
  2. #include "tchar.h"
  3. #include "MyEzcad.h"

  4. HINSTANCE hEzdDLL;
  5. LMC1_INITIAL lmc1_Initial;
  6. LMC1_LOADEZDFILE lmc1_LoadEzdFile;
  7. LMC1_CHANGETEXTBYNAME lmc1_ChangeTextByName;
  8. LMC1_MARK lmc1_Mark;
  9. LMC1_CLOSE lmc1_Close;

  10. BOOL APIENTRY _stdcall DllMain( HANDLE hModule,
  11. DWORD ul_reason_for_call,
  12. LPVOID lpReserved )

  13. {
  14. return TRUE;
  15. }

  16. __declspec(dllexport) int _stdcall stdCallStart(){
  17. hEzdDLL = LoadLibrary(_T("MarkEzd.dll"));
  18. if(hEzdDLL==NULL){
  19. return -1;
  20. }

  21. lmc1_Initial=(LMC1_INITIAL)GetProcAddress(hEzdDLL, "lmc1_Initial");
  22. if(lmc1_Initial==NULL){
  23. return -1;
  24. }

  25. lmc1_LoadEzdFile=(LMC1_LOADEZDFILE)GetProcAddress(hEzdDLL,"lmc1_LoadEzdFile");
  26. if(lmc1_LoadEzdFile==NULL){
  27. return -1;
  28. }

  29. lmc1_ChangeTextByName=(LMC1_CHANGETEXTBYNAME)GetProcAddress(hEzdDLL,"lmc1_ChangeTextByName");
  30. if(lmc1_ChangeTextByName==NULL){
  31. return -1;
  32. }

  33. lmc1_Close=(LMC1_CLOSE)GetProcAddress(hEzdDLL, "lmc1_Close");
  34. if(lmc1_Close==NULL){
  35. return -1;
  36. }

  37. lmc1_Mark=(LMC1_MARK)GetProcAddress(hEzdDLL,"lmc1_Mark");
  38. if(lmc1_Mark==NULL){
  39. return -1;
  40. }

  41. return 0;
  42. }

  43. __declspec(dllexport) int _stdcall stdCallEnd(){
  44. FreeLibrary(hEzdDLL);
  45. hEzdDLL = NULL;
  46. return 0;
  47. }

  48. __declspec(dllexport) int _stdcall lmc1_Initial_StdCall(TCHAR* strEzCadPath,
  49. BOOL bTestMode,
  50. HWND hOwenWnd){
  51. return lmc1_Initial(strEzCadPath,bTestMode,hOwenWnd);
  52. }

  53. __declspec(dllexport) int _stdcall lmc1_LoadEzdFile_StdCall(TCHAR* strFileName){
  54. return lmc1_LoadEzdFile(strFileName);
  55. }

  56. __declspec(dllexport) int _stdcall lmc1_ChangeTextByName_StdCall(TCHAR* strTextName, TCHAR* strTextNew){
  57. return lmc1_ChangeTextByName(strTextName,strTextNew);
  58. }

  59. __declspec(dllexport) int _stdcall lmc1_Mark_StdCall(BOOL bFlyMark){
  60. return lmc1_Mark(bFlyMark);
  61. }

  62. __declspec(dllexport) int _stdcall lmc1_Close_StdCall(){
  63. return lmc1_Close();
  64. }


...全文
给本帖投票
1775 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_46538663 2020-03-11
  • 打赏
  • 举报
回复
都是高手大神级别
leon_zeng0 2019-07-19
  • 打赏
  • 举报
回复
我用vc2010 二次开发金橙子打标卡 我的测试软件在金橙子2.5.3 盗版下可以正常工作,但换到正版2.14.9 下, nErr = lmc1_Initial(strEzCadPath,bTestMode,GetSafeHwnd()); 返回错误码 21 不知是什么意思? 是不是那个对应的Markezd.dll 不好,还是怎么?
倾心软件 2018-12-25
  • 打赏
  • 举报
回复
赞一下,我也在找EzMark.dll的资料
cyg17173 2017-09-19
  • 打赏
  • 举报
回复
搞定了,原来是版本问题,EzCad2.1.4 _UNICODE 这个版本就可以。 折腾了好几天,阴差阳错的找到了该文件常见出现的位置。 http://www.dllzj.com/EzMark.dll/ 该文件常见出现的位置: 序号 位 版本 位置 1 X86 1, 0, 0, 1 \打标机\济南金强\金橙子软件(HK30W已校正)\金橙子软件(HK30W已校正)\EzCad2.1.2(20090527) 谢谢乐于分享的各位前辈,这都是10多年前的DLL资源。
赵4老师 2017-09-19
  • 打赏
  • 举报
回复
请对缺少 “API-MS-WIN-*.DLL” 的提示做到眼不见为净!
cyg17173 2017-09-19
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
http://www.dllzj.com

谢谢赵老师,这个网站没有,我在其他网上下载了,但是放进去后,用Depends 分析,显示缺少的DLL更多,如下图所示。
赵4老师 2017-09-19
  • 打赏
  • 举报
回复

24,862

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
社区公告
暂无公告

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

手机看
关注公众号

关注公众号

客服 返回
顶部