重写VC++C++DLL

已libshinecard.dll libshinecard.h libshinecard.lib为例

  1. 打开VC++6.0中打开
  2. 编写测试程序:需将libshinecard.h 添加引用  将libshinecard.lib加入工程连接中;如果是winform程序,则将#include <windows.h> 添加引用
  3. 新建Win32-Dynamic-Link Library 程序

a)         在libshinecard.cpp文件中://这里面是要重写的方法

                  extern "C" {
        //add a func called by c# 
        //int __stdcall M100A_ReadMagcardDecode(HANDLE ComHandle, bool bHasMac_Addr, BYTE Mac_Addr, BYTE _track, DWORD *_DataLen,BYTE _BlockData[], char *RecordInfo);
        LIBSHINECARD_API int shine_M100A_CheckCardPosition(HANDLE ComHandle,bool bHasMac_Addr, BYTE Mac_Addr,char * CardStates,char *RecordInfo)
        {  
          printf("%s start\n", "shine_M100A_CheckCardPosition");  
          return M100A_CheckCardPosition(ComHandle,bHasMac_Addr, Mac_Addr,(BYTE*)CardStates,RecordInfo);
        }
       }                                                 

b)         再到libshinecard.h中

   extern "C"
    {
      LIBSHINECARD_API int shine_M100A_CheckCardPosition(HANDLE ComHandle,bool bHasMac_Addr, BYTE Mac_Addr,char * CardStates,char *RecordInfo);
    }

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-14
  • 2022-12-23
  • 2022-12-23
  • 2022-01-11
  • 2021-11-13
猜你喜欢
  • 2021-06-14
  • 2021-05-18
  • 2021-06-02
  • 2021-06-23
  • 2022-02-03
  • 2021-12-28
相关资源
相似解决方案