zoukankan      html  css  js  c++  java
  • python winpdb远程调试

     1.使用rpdb2.start_embedded_debugger ,注意要将参数fAllowRemote 设置为True

        2.winpdb前端GUI使用python2

        3.rpdb兼容python2,3

        4.winpdb-1.4.8下载

    def start_embedded_debugger(
        pwd,
        fAllowUnencrypted = True,
        fAllowRemote = False,
        timeout = TIMEOUT_FIVE_MINUTES,
        fDebug = False
        ):
    
        """
        Use 'start_embedded_debugger' to invoke the debugger engine in embedded
        scripts. put the following line as the first line in your script:
    
        import rpdb2; rpdb2.start_embedded_debugger(pwd)
    
        This will cause the script to freeze until a debugger console attaches.
    
        pwd     - The password that governs security of client/server communication
        fAllowUnencrypted - Allow unencrypted communications. Communication will
                            be authenticated but encrypted only if possible.
        fAllowRemote - Allow debugger consoles from remote machines to connect.
        timeout - Seconds to wait for attachment before giving up. If None,
                  never give up. Once the timeout period expires, the debuggee will
                  resume execution.
        fDebug  - debug output.
    
        IMPORTNAT SECURITY NOTE:
        USING A HARDCODED PASSWORD MAY BE UNSECURE SINCE ANYONE WITH READ
        PERMISSION TO THE SCRIPT WILL BE ABLE TO READ THE PASSWORD AND CONNECT TO
        THE DEBUGGER AND DO WHATEVER THEY WISH VIA THE 'EXEC' DEBUGGER COMMAND.
    
        It is safer to use: start_embedded_debugger_interactive_password()
        """
    
        return __start_embedded_debugger(
                            pwd,
                            fAllowUnencrypted,
                            fAllowRemote,
                            timeout,
                            fDebug
                            )
    
    def start_embedded_debugger_interactive_password(
        fAllowUnencrypted = True,
        fAllowRemote = False,
        timeout = TIMEOUT_FIVE_MINUTES,
        fDebug = False,
        stdin = sys.stdin,
        stdout = sys.stdout
        ):
    
        if g_server is not None:
            return
    
        if stdout is not None:
            stdout.write('Please type password:')
    
        pwd = stdin.readline().rstrip('n')
    
        return __start_embedded_debugger(
                            pwd,
                            fAllowUnencrypted,
                            fAllowRemote,
                            timeout,
                            fDebug
                            )

    参考:

      1.https://segmentfault.com/a/1190000000356018

      2.http://winpdb.org/docs/embedded-debugging/

  • 相关阅读:
    SQL中join的用法
    SQL中sysname数据类型的含义(转)
    MVC-Razor视图
    GridView用法
    常见的23种设计模式
    协程
    Kotlin学习
    数据绑定库和MVVM
    LiveData
    函数式编程
  • 原文地址:https://www.cnblogs.com/goyier/p/9191985.html
Copyright © 2011-2022 走看看