libsharememory.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. // 下列 ifdef 块是创建使从 DLL 导出更简单的
  2. // 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 LIBSHAREMEMORY_EXPORTS
  3. // 符号编译的。在使用此 DLL 的
  4. // 任何其他项目上不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将
  5. // LIBSHAREMEMORY_API 函数视为是从 DLL 导入的,而此 DLL 则将用此宏定义的
  6. // 符号视为是被导出的。
  7. #ifndef LIBSHAREMEMRY
  8. #define LIBSHAREMEMRY
  9. #ifdef LIBSHAREMEMORY_EXPORTS
  10. #define LIBSHAREMEMORY_API __declspec(dllexport)
  11. #else
  12. #define LIBSHAREMEMORY_API __declspec(dllimport)
  13. #endif
  14. #include <windows.h>
  15. using namespace std ;
  16. class libsharememory_impl; //桥接
  17. // 此类是从 libsharememory.dll 导出的
  18. class LIBSHAREMEMORY_API Clibsharememory
  19. {
  20. public:
  21. Clibsharememory(void);
  22. ~Clibsharememory();
  23. // TODO: 在此添加您的方法。
  24. VOID Unlock();
  25. BOOL IsLocked();
  26. LPVOID Lock(DWORD dwWaitTimeout=INFINITE);
  27. BOOL IsValid();
  28. DWORD GetBytes();
  29. VOID Close();
  30. BOOL Open(LPCTSTR szName);
  31. BOOL Create(LPCTSTR szName, DWORD dwBytes);
  32. int GetEntityNum();
  33. private:
  34. libsharememory_impl*m_pImpl;
  35. };
  36. #endif