- 利用 QSharedMemory
程序创建时在内存中开辟一块内存,在运行时根据内存a是否已经建立判断程序是不是唯一运行。
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
static QSharedMemory *shareMem = new QSharedMemory( "SingleApp"); //创建“SingleApp”的共享内存块
if ( !shareMem->create( 1 ) )//创建大小1b的内存
{
qApp->quit(); //创建失败,说明已经有一个程序运行,退出当前程序
return -1;
}
MainWindow w;
w.show();
return a.exec();
}
- 。。。。