<p>被标题搞糊涂了?让我解释一下:
我确实在.NET进程(我的C应用程序是主机)中使用IronPython执行python脚本:</p>
<pre><code>ScriptEngine python = Python.CreateEngine();
ScriptSource pyFromFileSource = python.CreateScriptSourceFromString(script);
CompiledCode pyFromFileCode = pyFromFileSource.Compile();
ScriptRuntime runtime = engine.Runtime;
ScriptScope scope = runtime.CreateScope(); //get a scope where we put in the stuff from the host
scope.SetVariable("lab", this); //allow usage of this class in the script
script.Execute(scope);
</code></pre>
<p>上面显示的代码在后台线程中运行(使用<code>Task</code>类)。脚本包含一个错误,它导致<code>IronPython.Runtime.Exceptionis.TypeErrorException</code>冒泡。我能抓住这个,然后得到信息。
<strong><br/>但是如何获取导致异常的脚本行或行号?</strong></p>