Beispiel #1
0
def main():
    app = QtWidgets.QApplication(sys.argv)

    app.setOrganizationName("GNS3")
    app.setOrganizationDomain("gns3.net")
    app.setApplicationName("GNS3")
    app.setApplicationVersion(__version__)

    # We force a full garbage collect before exit
    # for unknow reason otherwise Qt Segfault on OSX in some
    # conditions
    import gc
    gc.collect()

    # Manage Ctrl + C or kill command
    def sigint_handler(*args):
        log.info("Signal received exiting the application")
        app.closeAllWindows()

    # signal.signal(signal.SIGINT, sigint_handler)
    # signal.signal(signal.SIGTERM, sigint_handler)

    mainwindow = IOUVMConverterWizard()
    mainwindow.show()
    exit_code = mainwindow.exec_()

    # We force a full garbage collect before exit
    # for unknow reason otherwise Qt Segfault on OSX in some
    # conditions
    import gc
    gc.collect()

    sys.exit(exit_code)
Networks:
{addrs}

Open connections:
{connections}

Processus:
""".format(
            version=__version__,
            qt=QtCore.QT_VERSION_STR,
            pyqt=QtCore.PYQT_VERSION_STR,
            os=platform.platform(),
            python=platform.python_version(),
            memory=psutil.virtual_memory(),
            cpu=psutil.cpu_times(),
            connections=connections,
            addrs="\n".join(addrs)
        )
        for proc in psutil.process_iter():
            try:
                psinfo = proc.as_dict(attrs=["name", "exe"])
                data += "* {} {}\n".format(psinfo["name"], psinfo["exe"])
            except psutil.NoSuchProcess:
                pass
        return data

if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    print(ExportDebugDialog(None)._getDebugData())