ShareMemery.cpp 707 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #include "ShareMemery.h"
  2. ShareMemery::ShareMemery(QObject *parent) :
  3. QObject(parent)
  4. {
  5. }
  6. ShareMemery::~ShareMemery()
  7. {
  8. }
  9. void ShareMemery::setKey(const QString &key)
  10. {
  11. mSharedMemory.setKey(key);
  12. }
  13. bool ShareMemery::sendMessage(const QString &message)
  14. {
  15. bool isSucceed = false;
  16. if (!mSharedMemory.create(1024))
  17. {
  18. if (mSharedMemory.attach())
  19. {
  20. mSharedMemory.lock();
  21. char * to = static_cast<char*>(mSharedMemory.data());
  22. const char * from = message.toUtf8().data();
  23. ::memcpy(to, from, message.size());
  24. mSharedMemory.unlock();
  25. mSharedMemory.detach();
  26. }
  27. }
  28. return isSucceed;
  29. }