Как отключить функцию перенаправления вывода в удаленный сборщик win32trace в PythonWin, не удаляя PythonWin?

1

Когда я запускаю приложение wxPython, он печатает строку "Перенаправление вывода в win32trace remote collector", и я должен открыть инструмент сбора трассировки PythonWin, чтобы просмотреть этот вывод трассировки.

Поскольку мне не интересно собирать этот вывод, как отключить эту функцию?

Теги:
wxpython

3 ответа

2
Лучший ответ

Вы даже можете передать это, когда вы создаете экземпляр wx.App():

if __name__ == "__main__":
    app = wx.App(redirect=False) #or 0
    app.MainLoop()

wxPython wx.App docs

1

Кажется, проблема с TortoiseHG. Это также происходит при использовании win32gui.GetOpenFileNameW. Деинсталляция решает эту проблему. К сожалению, я не нашел реального решения, как исправить это.

  • 0
    Я также обнаружил, что одна и та же проблема вызывает ту же проблему (аналогичные функции SVN). Удаление это решило проблему.
  • 0
    У меня была точно такая же проблема с odrive , удаление его сразу решило проблему. Странные вещи.
1

Это сообщение обмануло меня мыслью о том, что win32trace мешает мне видеть исключенные исключения в обычной консоли (моей IDE). Реальная проблема заключалась в том, что wxPython по умолчанию перенаправляет stdout/stderr во всплывающее окно, которое быстро исчезает после неперехваченного исключения. Чтобы решить эту проблему, мне просто пришлось передать

redirect=0
в конструктор суперкласса моего приложения.
class MyApp(wx.App):
    def __init__(self):
        # Prevent wxPython from redirecting stdout/stderr:
        super(MyApp, self).__init__(redirect=0)

Несмотря на это, мне все еще интересно, как управлять win32trace.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню