Быстро и Python Twisted

Существует несколько коммерческих решений, например, Symantec, но они не дешевые. Простейшим решением для этого является использование Bitlocker.

приветствия

0
задан 27 June 2012 в 19:58

7 ответов

Если вы используете привязки python-gi 12.04 или более поздней версии, вам нужно импортировать и установить twisted.internet.gireactor или twisted.internet.gtk3reactor, прежде чем делать реактор.run (). Вам также нужно использовать это в качестве основного цикла, а не запускать Gtk.main () или GLib.MainLoop (). Run () самостоятельно. Если вы используете более старую версию и используете старые привязки PyGTK +, то вам нужно использовать либо glib2reactor, либо gtk2reactor.

Примерно так:

from twisted.internet import gtk3reactor
from gi.repository import GLib
gtk3reactor.install()

GLib.idle_add(create_windows_and_do_stuff_method)
from twisted.internet import reactor

reactor.run()

последовательность важна, поскольку импорт реактора по умолчанию приведет к его установке, а не к соответствующему реактору, если реактор еще не установлен. Таким образом, вам нужно сначала установить правильный файл, а затем выполнить reactor.run(). И вместо Gtk.main_quit() вы должны from twisted.internet import reactor и использовать reactor.stop().

2
ответ дан 25 July 2018 в 18:19

Если вы используете привязки python-gi 12.04 или более поздней версии, вам нужно импортировать и установить twisted.internet.gireactor или twisted.internet.gtk3reactor, прежде чем делать реактор.run (). Вам также нужно использовать это в качестве основного цикла, а не запускать Gtk.main () или GLib.MainLoop (). Run () самостоятельно. Если вы используете более старую версию и используете старые привязки PyGTK +, то вам нужно использовать либо glib2reactor, либо gtk2reactor.

Примерно так:

from twisted.internet import gtk3reactor
from gi.repository import GLib
gtk3reactor.install()

GLib.idle_add(create_windows_and_do_stuff_method)
from twisted.internet import reactor

reactor.run()

последовательность важна, поскольку импорт реактора по умолчанию приведет к его установке, а не к соответствующему реактору, если реактор еще не установлен. Таким образом, вам нужно сначала установить правильный файл, а затем выполнить reactor.run(). И вместо Gtk.main_quit() вы должны from twisted.internet import reactor и использовать reactor.stop().

2
ответ дан 2 August 2018 в 00:32

Если вы используете привязки python-gi 12.04 или более поздней версии, вам нужно импортировать и установить twisted.internet.gireactor или twisted.internet.gtk3reactor, прежде чем делать реактор.run (). Вам также нужно использовать это в качестве основного цикла, а не запускать Gtk.main () или GLib.MainLoop (). Run () самостоятельно. Если вы используете более старую версию и используете старые привязки PyGTK +, то вам нужно использовать либо glib2reactor, либо gtk2reactor.

Примерно так:

from twisted.internet import gtk3reactor
from gi.repository import GLib
gtk3reactor.install()

GLib.idle_add(create_windows_and_do_stuff_method)
from twisted.internet import reactor

reactor.run()

последовательность важна, поскольку импорт реактора по умолчанию приведет к его установке, а не к соответствующему реактору, если реактор еще не установлен. Таким образом, вам нужно сначала установить правильный файл, а затем выполнить reactor.run(). И вместо Gtk.main_quit() вы должны from twisted.internet import reactor и использовать reactor.stop().

2
ответ дан 4 August 2018 в 16:01

Если вы используете привязки python-gi 12.04 или более поздней версии, вам нужно импортировать и установить twisted.internet.gireactor или twisted.internet.gtk3reactor, прежде чем делать реактор.run (). Вам также нужно использовать это в качестве основного цикла, а не запускать Gtk.main () или GLib.MainLoop (). Run () самостоятельно. Если вы используете более старую версию и используете старые привязки PyGTK +, вам нужно использовать либо glib2reactor, либо gtk2reactor.

Что-то вроде этого: последовательность важна, поскольку импорт реактора по умолчанию приведет к его установке, а не к соответствующему реактору, если реактор еще не установлен. Таким образом, вам нужно сначала установить правильный файл, а затем выполнить reactor.run(). И вместо Gtk.main_quit() вы должны from twisted.internet import reactor и использовать reactor.stop().

2
ответ дан 6 August 2018 в 00:39

Если вы используете привязки python-gi 12.04 или более поздней версии, вам нужно импортировать и установить twisted.internet.gireactor или twisted.internet.gtk3reactor, прежде чем делать реактор.run (). Вам также нужно использовать это в качестве основного цикла, а не запускать Gtk.main () или GLib.MainLoop (). Run () самостоятельно. Если вы используете более старую версию и используете старые привязки PyGTK +, вам нужно использовать либо glib2reactor, либо gtk2reactor.

Что-то вроде этого: последовательность важна, поскольку импорт реактора по умолчанию приведет к его установке, а не к соответствующему реактору, если реактор еще не установлен. Таким образом, вам нужно сначала установить правильный файл, а затем выполнить reactor.run(). И вместо Gtk.main_quit() вы должны from twisted.internet import reactor и использовать reactor.stop().

2
ответ дан 7 August 2018 в 18:05

Если вы используете привязки python-gi 12.04 или более поздней версии, вам нужно импортировать и установить twisted.internet.gireactor или twisted.internet.gtk3reactor, прежде чем делать реактор.run (). Вам также нужно использовать это в качестве основного цикла, а не запускать Gtk.main () или GLib.MainLoop (). Run () самостоятельно. Если вы используете более старую версию и используете старые привязки PyGTK +, то вам нужно использовать либо glib2reactor, либо gtk2reactor.

Примерно так:

from twisted.internet import gtk3reactor
from gi.repository import GLib
gtk3reactor.install()

GLib.idle_add(create_windows_and_do_stuff_method)
from twisted.internet import reactor

reactor.run()

последовательность важна, поскольку импорт реактора по умолчанию приведет к его установке, а не к соответствующему реактору, если реактор еще не установлен. Таким образом, вам нужно сначала установить правильный файл, а затем выполнить reactor.run(). И вместо Gtk.main_quit() вы должны from twisted.internet import reactor и использовать reactor.stop().

2
ответ дан 10 August 2018 в 06:52

Если вы используете привязки python-gi 12.04 или более поздней версии, вам нужно импортировать и установить twisted.internet.gireactor или twisted.internet.gtk3reactor, прежде чем делать реактор.run (). Вам также нужно использовать это в качестве основного цикла, а не запускать Gtk.main () или GLib.MainLoop (). Run () самостоятельно. Если вы используете более старую версию и используете старые привязки PyGTK +, то вам нужно использовать либо glib2reactor, либо gtk2reactor.

Примерно так:

from twisted.internet import gtk3reactor
from gi.repository import GLib
gtk3reactor.install()

GLib.idle_add(create_windows_and_do_stuff_method)
from twisted.internet import reactor

reactor.run()

последовательность важна, поскольку импорт реактора по умолчанию приведет к его установке, а не к соответствующему реактору, если реактор еще не установлен. Таким образом, вам нужно сначала установить правильный файл, а затем выполнить reactor.run(). И вместо Gtk.main_quit() вы должны from twisted.internet import reactor и использовать reactor.stop().

2
ответ дан 15 August 2018 в 18:49
  • 1
    Я следовал твоим инструкциям, но они не работали. Я создал экземпляр класса twisted.internet.gireactor.GIReactor и запустил его метод run вместо запуска Gtk.main () в if _name_ == '_main _': в нижней части кода для моего диалога, но это не сработало. Я поместил оператор print прямо перед вызовами метода listenTCP и run, но оператор print никогда не выполнялся. Что я сделал не так? – Aaron Hill 27 June 2012 в 04:55
  • 2
    Вы не должны создавать свой собственный экземпляр класса таким образом. Я обновил ответ с примером кода, чтобы помочь вам лучше понять. – dobey 27 June 2012 в 18:15
  • 3
    Где мне должен быть вызов функции реактор listenTCP ? В вашем примере вызывается только processor.run () . – Aaron Hill 27 June 2012 в 19:05
  • 4
    В & quot; create_windows_and_do_stuff_method & quot; или где-то еще, что вызывается оттуда. – dobey 27 June 2012 в 19:23
  • 5
    Я обновил свой вопрос, чтобы показать изменения, которые я сделал. Оператор print 'Preparing GLib' никогда не запускается. – Aaron Hill 27 June 2012 в 19:59

Другие вопросы по тегам:

Похожие вопросы: