title: Mixed mode Debugging Python/C# using Child Process Debugging Power Tool
body: <p>I'm trying to debug (hit breakpoint) a python script which is executed through a new process from C#.</p>
  
  <p>I have installed <a href="https://marketplace.visualstudio.com/items?itemName=vsdbgplat.MicrosoftChildProcessDebuggingPowerTool" rel="nofollow noreferrer">Child Process Debugging Power tool</a> as that tool supposedly allows one to do that.</p>
  
  <p>According to its documentation it requires two things:</p>
  
  <ol>
  <li>The parent process must be debugged with the native debugging enigne</li>
  <li>The parent process must launch the child process using either the CreateProcess or CreateProcessAsUser Win32 APIs.</li>
  </ol>
  
  <p>My process is created as follows:</p>
  
  <pre><code>ProcessStartInfo startInfo = new ProcessStartInfo();
  Process p = new Process();
  
  startInfo.CreateNoWindow = true;
  startInfo.UseShellExecute = false;
  startInfo.RedirectStandardOutput = false;
  startInfo.RedirectStandardError = true;
  startInfo.RedirectStandardInput = false;
  ...
  p.StartInfo = startInfo;
  p.EnableRaisingEvents = true;
  p.Start();
  </code></pre>
  
  <p>And as far as I am aware, as long as I use </p>
  
  <pre><code>UseShellExecute = false; 
  </code></pre>
  
  <p>the process should be started with CreateProcess. (Req. 2)</p>
  
  <p>In my project I have also enabled native code debugging. (Req.1)</p>
  
  <p>I have also included both python.pdb and python36.pdb in my symbols list.
  However it seems I'm unable to find python3.pdb</p>
  
  <pre><code>'python.exe' (Win32): Loaded 'C:\...\Python36\python.exe'. Symbols loaded.
  'python.exe' (Win32): Loaded 'C:\...\Python36\python36.dll'. Symbols loaded.
  'python.exe' (Win32): Loaded 'C:\...\python3.dll'. Cannot find or open the PDB file.
  </code></pre>
  
  <p>This was not included when I installed python with debugging symbols and I do not seem to find it anywhere else.</p>
  
  <p>I am using visual studio 2017, no breakpoints are hit.</p>