Ok, that's very helpful. I didn't know that. Thanks, Severin
On Fri, Jan 30, 2009 at 6:29 PM, Michael Foord <[email protected]>wrote: > Severin wrote: > >> Good point! I forgot that I was having the *.py files in a subdirectory. >> >> Is it also possible to set the 'current' directory for the engine? >> >> For instance I would like to have the engine living in a subfolder of my >> project and then all path's would be relative to this subfolder. >> >> > Windows only has a concept of a current directory per process (actually > technically per drive per process but never mind). Changing your current > directory in your host app will change it for all contained engines... Any > of your Python scripts changing the current directory will also change it > for the host app. > > For Python scripts in general (not just IronPython) it is much better to do > relative path resolution yourself, relative to the current __file__ or > sys.executable (which you are likely to need to set in a hosted > environment). > > All the best, > > Michael > > > > thank you, >> Severin >> >> >> On Fri, Jan 30, 2009 at 4:56 PM, Michael Foord >> <[email protected]<mailto: >> [email protected]>> wrote: >> >> Severin wrote: >> >> Hello, >> >> I'm digging out this thread again. >> >> I'm trying to run python scripts from C# using the DLR. >> >> Simple examples work, namely if I have just one function in >> one python file. >> >> How does it work when one python file imports from another >> python file? I get "No module named x" ImportExceptions when >> trying to compile these python files. >> >> >> If you're running them from '.py' source files then you aren't >> compiling them - you're just executing them from an embedded >> environment. >> >> The import machinery should work exactly the same as for CPython, >> but you may need to setup the initial sys.path depending on how >> you are executing the scripts. >> >> You probably need to use the engine.SetSearchPaths method passing >> in an array with the path to the directory containing the top >> level Python file (adding any other directories that you need to >> be able to import from). >> >> HTH >> >> Michael >> >> >> I compile the main-file with 'CreateScriptSourceFromFile'. >> >> >> May be I am using the wrong approach in general. What I have >> is a bunch of python files that I used with CPython directly >> so far. Now I want to extend my program with C# (since >> database handling is much more convenient there) and I want to >> use the python files that I already have. >> >> What is the best approach for this scenario? >> >> Thanks for any kind of hint. >> >> Severin >> >> On Tue, Jan 20, 2009 at 5:37 PM, Michael Foord >> <[email protected] <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>>> wrote: >> >> Renaud Durand wrote: >> >> Ok, Thank you. >> >> Does anyone know where could I find an IronPython Assembly >> documentation and/or up to date tutorials ? >> >> >> These tutorials are up to date - except for the one >> specified as >> being for IP1: >> >> http://www.voidspace.org.uk/ironpython/embedding.shtml >> >> Michael >> >> >> Thank you again. >> >> 2009/1/20 Curt Hagenlocher <[email protected] >> <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>> <mailto:[email protected] >> >> <mailto:[email protected]> >> >> <mailto:[email protected] >> <mailto:[email protected]>>>> >> >> >> I believe this was valid for a long-ago alpha. For >> the 2.0 >> release, you'll want to create an engine by saying >> engine = Python.CreateEngine() >> >> On Tue, Jan 20, 2009 at 7:32 AM, Renaud Durand >> <renaud.durand.it <http://renaud.durand.it> >> <http://renaud.durand.it> >> <http://renaud.durand.it>@gmail.com >> <http://gmail.com> <http://gmail.com> >> <http://gmail.com>> wrote: >> >> Hi, >> >> I want to use IronPython function through C#. To >> do It, I >> found a tutorial at >> >> http://www.ironpython.info/index.php/Hosting_IronPython_2. >> But the code does not seem to be updated for >> IronPython >> 2.0. >> >> the code is : >> >> using System; >> using IronPython.Hosting; >> using IronPython.Runtime; >> using Microsoft.Scripting; >> using Microsoft.Scripting.Hosting; >> >> namespace EmbeddedCalculator >> { >> public class Engine >> { >> private ScriptEngine engine; >> >> public Engine() >> { >> engine = PythonEngine.CurrentEngine; >> } >> >> public string calculate(string input) >> { >> try >> { >> ScriptSource source = >> engine.CreateScriptSourceFromString(input, "py"); >> return source.Execute().ToString(); >> } >> catch >> { >> return "Error"; >> } >> } >> >> } >> } >> // End of code >> >> When I try to compile it in visual studio, the >> compiler >> could >> not find the name "PythonEngine". I have added >> all the >> references to >> the needed libraries. So, what am I missing ? >> >> >> Thank you :-). >> >> -- Renaud Durand >> >> _______________________________________________ >> Users mailing list >> [email protected] >> <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>> >> <mailto:[email protected] >> <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>>> >> >> >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> >> >> >> _______________________________________________ >> Users mailing list >> [email protected] >> <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>> >> <mailto:[email protected] >> <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>>> >> >> >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> >> >> >> >> -- Renaud Durand >> >> ------------------------------------------------------------------------ >> >> >> >> _______________________________________________ >> Users mailing list >> [email protected] >> <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>> >> >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> >> >> -- http://www.ironpythoninaction.com/ >> http://www.voidspace.org.uk/blog >> >> >> >> _______________________________________________ >> Users mailing list >> [email protected] >> <mailto:[email protected]> >> <mailto:[email protected] >> <mailto:[email protected]>> >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Users mailing list >> [email protected] <mailto:[email protected]> >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> >> >> _______________________________________________ >> Users mailing list >> [email protected] <mailto:[email protected]> >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Users mailing list >> [email protected] >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> >> > > _______________________________________________ > Users mailing list > [email protected] > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > >
_______________________________________________ Users mailing list [email protected] http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
