ShareMemory_IF.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #pragma once
  2. // 下列 ifdef 块是创建使从 DLL 导出更简单的
  3. // 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 SHAREMEMORY_IF_EXPORTS
  4. // 符号编译的。在使用此 DLL 的
  5. // 任何其他项目上不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将
  6. // SHAREMEMORY_IF_API 函数视为是从 DLL 导入的,而此 DLL 则将用此宏定义的
  7. // 符号视为是被导出的。
  8. #ifdef SHAREMEMORY_IF_EXPORTS
  9. #define SHAREMEMORY_IF_API __declspec(dllexport)
  10. #define SHAREMEMORY_IF_C_API extern "C" __declspec(dllexport)
  11. #else
  12. #define SHAREMEMORY_IF_API __declspec(dllimport)
  13. #define SHAREMEMORY_IF_C_API extern "C" __declspec(dllimport)
  14. #endif
  15. #ifndef SHAREMEMORY_IF_EXPORTS
  16. #ifdef _WIN64
  17. #ifdef _DEBUG
  18. #pragma comment(lib, "ShareMemory_IFX64D.lib")
  19. #else
  20. #pragma comment(lib, "ShareMemory_IFX64.lib")
  21. #endif
  22. #else
  23. #ifdef _DEBUG
  24. #pragma comment(lib, "ShareMemory_IFD.lib")
  25. #else
  26. #pragma comment(lib, "ShareMemory_IF.lib")
  27. #endif
  28. #endif
  29. #endif
  30. #include "ShareMemory_Circle.h"
  31. //-1:failed,0:Exist,1:OK
  32. SHAREMEMORY_IF_C_API int Init_Circle_SM_IF(DWORD &BigBlockSize, DWORD &BigBlockCount, DWORD &SmallBlockSize, DWORD &SmallBlockCount);
  33. SHAREMEMORY_IF_C_API const char* Get_Circle_SM_Object(DWORD BlockSize);
  34. SHAREMEMORY_IF_C_API void Exit_Circle_SM_IF();