By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
440,621 Members | 1,029 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 440,621 IT Pros & Developers. It's quick & easy.

step through .py file in a .NET application written in C# in Visual Studio

P: n/a
Bo
Hello All,

I am experimenting IronPython in Visual Studio. Here is what I have,
what I did and what I want

1. I have installed Visual Studio SDK 4.0 according to this blog
http://blogs.msdn.com/aaronmar/archi...ronpython.aspx

If I run Visual Studio under Experimental Hive, a Python file opened
is color coded.

2. Also, my computer has apparently installed some IronPython DLL
because my Visual Studio can recoginize the following class:
IronPython.Hosting.PythonEngine.

If I declare something like the following in Visual Studio:

public static class MyPythonClass {
private static IronPython.Hosting.PythonEngine MY_ENGINE;
//suppose I have created an instance of PhythonEngine and assigned
to MY_ENGINE
............
}

If I do "Go to Definition" of PythonEngine, I can navigate to the
Definition of PythonEngine, but it is from MetaData.

3. In my .NET application (written in C#) , I can invoke the
execution of an external python file using something like:
MyPythonClass.MY_ENGINE.ExecuteFile("myPythonFileW ithAbsolutePath.py")

The python file (myPythonFileWithAbsolutePath.py) can be executed all
right, but I want to step through it to debug it. Any suggestions on
how to do it?

Thanks a bunch.

Bo

Aug 6 '07 #1
Share this Question
Share on Google+
2 Replies


P: n/a
On Aug 6, 5:22 pm, Bo <bohema...@gmail.comwrote:
Hello All,

I am experimenting IronPython in Visual Studio. Here is what I have,
what I did and what I want

1. I have installed Visual Studio SDK 4.0 according to this bloghttp://blogs.msdn.com/aaronmar/archive/2006/02/16/a-bit-more-on-ironp...

If I run Visual Studio under Experimental Hive, a Python file opened
is color coded.

2. Also, my computer has apparently installed some IronPython DLL
because my Visual Studio can recoginize the following class:
IronPython.Hosting.PythonEngine.

If I declare something like the following in Visual Studio:

public static class MyPythonClass {
private static IronPython.Hosting.PythonEngine MY_ENGINE;
//suppose I have created an instance of PhythonEngine and assigned
to MY_ENGINE
............

}

If I do "Go to Definition" of PythonEngine, I can navigate to the
Definition of PythonEngine, but it is from MetaData.

3. In my .NET application (written in C#) , I can invoke the
execution of an external python file using something like:
MyPythonClass.MY_ENGINE.ExecuteFile("myPythonFileW ithAbsolutePath.py")

The python file (myPythonFileWithAbsolutePath.py) can be executed all
right, but I want to step through it to debug it. Any suggestions on
how to do it?

Thanks a bunch.

Bo
Um, make sure you compile with debug?

I have coded in Boo, which is very Python-like, and it will step
through the debugger just fine, so IP should do the same in theory.
But I've not used IP, so all I can give are generic "are you sure it's
plugged in?" type of suggestions.

Hmm, upon rereading your post, I see that you want the debugger to
step through a separate file that was executed using ExecuteFile.
Unless there are some debug options on ExecuteFile, I'd say your
chances are slim, since the file being executed is not really part of
the image being debugged. You could also try explicitly invoking the
debugger from within the file that you are loading, using (this works
from Boo):

System.Diagnostics.Debugger.Launch()
System.Diagnostics.Debugger.Break()
-- Paul

Aug 7 '07 #2

P: n/a
On Aug 7, 9:24 am, Paul McGuire <pt...@austin.rr.comwrote:
On Aug 6, 5:22 pm, Bo <bohema...@gmail.comwrote:
Hello All,
I am experimenting IronPython in Visual Studio. Here is what I have,
what I did and what I want
1. I have installed Visual Studio SDK 4.0 according to thisbloghttp://blogs.msdn.com/aaronmar/archive/2006/02/16/a-bit-more-on-ironp...
If I run Visual Studio under Experimental Hive, aPythonfile opened
is color coded.
2. Also, my computer has apparently installed some IronPython DLL
because my Visual Studio can recoginize the following class:
IronPython.Hosting.PythonEngine.
If I declare something like the following in Visual Studio:
public static class MyPythonClass {
private static IronPython.Hosting.PythonEngine MY_ENGINE;
//suppose I have created an instance of PhythonEngine and assigned
to MY_ENGINE
............
}
If I do "Go to Definition" of PythonEngine, I can navigate to the
Definition of PythonEngine, but it is from MetaData.
3. In my .NET application (written in C#) , I can invoke the
execution of an externalpythonfile using something like:
MyPythonClass.MY_ENGINE.ExecuteFile("myPythonFileW ithAbsolutePath.py")
Thepythonfile (myPythonFileWithAbsolutePath.py) can be executed all
right, but I want to step through it to debug it. Any suggestions on
how to do it?
Thanks abunch.
Bo

Um, make sure you compile with debug?

I have coded in Boo, which is veryPython-like, and it will step
through the debugger just fine, so IP should do the same in theory.
But I've not used IP, so all I can give are generic "are you sure it's
plugged in?" type of suggestions.

Hmm, upon rereading your post, I see that you want the debugger to
step through a separate file that was executed using ExecuteFile.
Unless there are some debug options on ExecuteFile, I'd say your
chances are slim, since the file being executed is not really part of
the image being debugged. You could also try explicitly invoking the
debugger from within the file that you are loading, using (this works
from Boo):

System.Diagnostics.Debugger.Launch()
System.Diagnostics.Debugger.Break()

-- Paul

Thanks Paul, for giving me the suggestions. I will try your
suggestion.

I have been struggling with the most of today. Here is a summary of
what I have found. May be useful to other

1. My IronPython DLL is version 1.1. It is download here
http://www.codeplex.com/Wiki/View.as...ame=IronPython

2. Apparently, there is a problem with either the ipy.exe or
IronPython.DLL that one cannot step into a function (F11 in visual
studio). Here is the discussion
http://lists.ironpython.com/pipermai...ay/004957.html

I am not sure if this is related to my case.

3. Here is Jim Hugunin's presentation
http://msdn.microsoft.com/msdntv/epi...H/manifest.xml

Apparently, he can step through the external ironpython file in an C#
application. He probably used an old version of Iron Python. The
method he used to execute the external iron python file is
Engine.Runfile()
Aug 8 '07 #3

This discussion thread is closed

Replies have been disabled for this discussion.