我们在app sob中嵌入了ironpython,脚本可以在我们的应用程序环境中执行.
我使用Python.CreateEngine()和ScriptScope.Execute()来执行python脚本.
我们有自己的编辑器(用C#编写),可以加载ironpython脚本并运行它.
我需要解决两个问题.
如果我在ironpython脚本中有一个print语句,我怎么能把它显示给我的编辑器(我将如何告诉python引擎将输出重定向到我的C#代码中的某个处理程序)
我计划使用unittest.py来运行unittest.当我运行以下runner = unittest.TextTestRunner()runner.run(testsuite)时
输出被重定向到标准输出,但需要一种方法将其重定向到我的C#编辑器输出窗口,以便用户可以看到结果.这个问题可能与1有关
任何帮助表示赞赏G.
您可以提供将用于所有输出的自定义Stream或TextWriter.您可以使用ScriptRuntime.IO.SetOutput重载之一来提供这些.您的Stream或TextWriter实现应该接收字符串,然后将它们输出到编辑器窗口(如果您在第二个执行线程上运行脚本,则可能会编组回UI线程).
| 归档时间: |
|
| 查看次数: |
4098 次 |
| 最近记录: |