1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| #!/usr/bin/python
# -*- coding: utf-8 -*-
# Python 3
import sys, os
import hashlib
from PyQt4 import QtCore, QtGui
#############################################################################
class Fenetre(QtGui.QWidget):
def __init__(self, parent=None):
super(Fenetre, self).__init__(parent)
#############################################################################
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
# Empêcher que ce programme ne soit lancé 2 fois
chaine = "monprogramme" + os.path.expanduser('~')
motif = hashlib.sha256()
motif.update(chaine.encode('latin1'))
sharedMemory = QtCore.QSharedMemory(motif.hexdigest())
if not sharedMemory.create(50):
QtGui.QMessageBox.critical(None, "Vérification", "Ce programme est déjà en cours d'exécution" )
app.quit()
sys.exit(0)
# lancement de la fenêtre
fen = Fenetre()
fen.show()
sys.exit(app.exec_()) |
Partager