[Python.NET] How to turn on console window from Windows System while debugging Embedded PythonNet app?

Seungweon Park swpark71 at gmail.com
Thu Apr 4 23:25:39 CEST 2013


As you see the screenshot, I ran same application like you, but it doesn't
have any output which a.py's supposed to print 'aa' in the screen after
"Hello World!".


[image: Inline image 2]


On Thu, Apr 4, 2013 at 1:51 PM, brad at fie.us <brad at fie.us> wrote:

> What happens when you run a compiled application like mine, that has both
> c# and python console output, directly from within the windows command line
> cmd.exe?  Do you see the WriteLine() results from C# but not PythonNet?
>
> That will tell you if it's an execution environment issue or an actual
> programming issue.  Which is still in question I think.
>
> -brad
>
> On Apr 4, 2013, at 4:40 PM, Seungweon Park <swpark71 at gmail.com> wrote:
>
> Image file is not attached. Here it goes.
>
>
> On Thu, Apr 4, 2013 at 1:37 PM, Seungweon Park <swpark71 at gmail.com> wrote:
>
>> Hi,
>>
>> Actually, my questions are
>>
>>             1. How to turn on console window(live) from Windows System
>> while debugging Embedded PythonNet app?
>>             2. How to capture python script execution output from C# code?
>>
>> I've been talking to Brad at fie.us about my issue which I can't get the
>> output result of any python command using PythonEngine.RunString() or
>> PythonEngine.RunSimpleString().
>> I've been tried to debug simple code with Python.Runtime project, but
>> can't find how to turn on this console window, nor capture the python
>> script execution output.
>>
>> What I'm trying to do is that I don't want to modify any python script
>> when running a python script from C# code, so I have below code:
>>
>>
>> using System;
>> using System.Collections.Generic;
>> using System.Linq;
>>  using System.Text;
>> using System.Threading.Tasks;
>> using Python.Runtime;
>>  using System.Diagnostics;
>>
>> namespace npythontest
>> {
>>  public class Program
>> {
>> static void Main(string[] args)
>>  {
>> PyObject po;
>>
>> PythonEngine.Initialize();
>>
>> IntPtr pythonLock = PythonEngine.AcquireLock();
>> po = PythonEngine.RunString("execfile('c:\\cvs\\brocade.py')");
>>  PythonEngine.ReleaseLock(pythonLock);
>>
>> PythonEngine.Shutdown();
>> }
>>  }
>> }
>>
>> and a.py prints out many string output. I want to capture this output  by
>> RunString()/RunSimpleString() method, but it doesn't return any result
>> except 'null'. It seems it isn't for getting output.
>>
>> Then, while talking to Brad, his screenshot from his Mac OS with Mono
>> displays the execution result output on an window like below, so wonder if
>> windows environment can have same console window.
>> Previously, Oleksii and Sharon mentioned in the thread
>> http://mail.python.org/pipermail/pythondotnet/2011-March/001103.html,
>> but don't know it's already implemented or not. However, I can't find how
>> to have same environment from my window system like Brad's Mac has.
>>
>> So would you help me how to capture the python script output or have
>> console window for debugging when I'm using embedded PythonNet?
>>
>> Thank you,
>> Spark.
>>
>> <Screen Shot 2013-04-01 at 6.22.50 PM.png>
>>
>>
> <mono_screenshot_pythonnet.png>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pythondotnet/attachments/20130404/3d2a401c/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 58574 bytes
Desc: not available
URL: <http://mail.python.org/pipermail/pythondotnet/attachments/20130404/3d2a401c/attachment-0001.png>


More information about the PythonDotNet mailing list