1
Vote

use of remoteConnect() after initialize() generates eception

description

Target OS: Windows 10 RS2 x64
Detailed:
    Windows 10 Kernel Version 15063 MP (8 procs) Free x64
    Product: WinNt, suite: TerminalServer SingleUserTS
    Built by: 15063.0.amd64fre.rs2_release.170317-1834
pykd version:
   pykd-0.3.2.7-cp35-none-win_amd64.whl

Description:
I want to create an eventHandler before connecting to target, to ensure that the initial events are also captured.

Call remoteConnect() after initialize() like below:

    pykd.initialize()
    pykd.remoteConnect('tcp:port=8888,server=127.0.0.1')

An exception happens:

    Traceback (most recent call last):
        File "d:\autodbg\testing\test.py", line 18, in <module>
        pykd.remoteConnect('tcp:port=8888,server=127.0.0.1')
    pykd.DbgException: pykd is already initialized

 Calling attachKernel() after initialize() doesn't have this problem.

comments

ussrhero wrote Jul 3 at 12:02 PM

It is 'as designed' behaviour.

initialize() function is intended only for local debugging. See: https://pykd.codeplex.com/wikipage?title=PYKD%200.3.%20API%20Reference&referringTitle=Documentation#initialize

remoteConnect is a analog of initialize() for remote debugging ( over network ).

They can not be used together