Allow running only one instance of application.

This commit is contained in:
2017-08-22 12:33:57 +02:00
parent 6f30949343
commit 5ebea2f7c9
4 changed files with 66 additions and 3 deletions
+31
View File
@@ -0,0 +1,31 @@
#include "application.h"
Application::Application(int &argc, char **argv)
:QApplication(argc, argv)
{
m_single = new QSharedMemory("ShredMemoryForOneInstanceOfProdejnaApp", this);
}
Application::~Application()
{
if (m_single->isAttached())
{
m_single->detach();
}
}
bool Application::lock()
{
if (m_single->attach(QSharedMemory::ReadOnly))
{
m_single->detach();
return false;
}
if (m_single->create(1))
{
return true;
}
return false;
}