在vb.net中运行Python函数
我刚开始学习vb.net,想从vb.net中调用python函数,但遇到了一个错误,提示'Invoke'不是'Microsoft.Scripting.Hosting.ObjectOperations'的成员。
Imports Microsoft.Scripting
Imports Microsoft.Scripting.Hosting
Imports IronPython.Hosting
Sub Main
Dim engine As ScriptEngine
Dim scope As ScriptScope
Dim i As Integer
engine = Python.CreateEngine()
scope = engine.ExecuteFile("C:\Working.py")
Dim v = engine.Operations.Invoke(scope.GetVariable(methodName))
这是需要调用的方法的名称,并且需要获取返回值。有没有人能推荐我一个更好的方法来实现这个?我已经看过这个链接:http://msmvps.com/blogs/theproblemsolver/archive/2008/08/14/calling-ironpython-functions-from-net.aspx
提前谢谢大家。
1 个回答
1
下面的代码应该可以正常工作:
Sub Main(ByVal args() As String)
Dim pyRT As ScriptRuntime = Python.CreateRuntime()
Dim workingObj As Object = pyRT.UseFile("working.py")
workingObj.methodName()
End Sub