头文件
/*************************************************************************************************/ /*! \file CppDll.h \attention Copyright (c) 2016 Jacky_Dai. All Rights Reserved. */ /*************************************************************************************************/ #ifndef CPP_DLL_H #define CPP_DLL_H /*** Defines/Macros/Constants/Typedefs ***********************************************************/ #ifdef CPPDLL_EXPORTS #define CPPDLL_API __declspec(dllexport) #else #define CPPDLL_API __declspec(dllimport) #endif //Include Head files ////////////////////////////////////////////////////////////////////////// #include <Windows.h> #ifdef __cplusplus extern "C" { #endif /*************************************************************************************************/ /*! \brief CPP_CALLBACK The callback for test. Note: Out put test data \param[out] pbySignatureData - Reserved buffer for writing signature. \param[in/out] pdwSignatureDataSize - The reserved data size / Used data size \return Return ERR_OK if the function succeeds else nonzero error code. */ /*************************************************************************************************/ typedef DWORD (CALLBACK *CPP_CALLBACK)(PBYTE pbySignatureData, DWORD pdwSignatureDataSize); CPPDLL_API DWORD TestApp1(BYTE* pByInBuffer, DWORD dwInSize, BYTE* pByOutBuffer, DWORD* pdwOutSize); CPPDLL_API DWORD TestApp2(BYTE* pByInBuffer, DWORD dwInSize, BYTE* pByOutBuffer, DWORD* pdwOutSize, CPP_CALLBACK pCallback); CPPDLL_API DWORD TestApp3(DWORD dwVal); CPPDLL_API DWORD TestApp4(DWORD* pdwVal); #ifdef __cplusplus } #endif #endif//CPP_DLL_H /**************************