【问题标题】:run Python functions from vb.net从 vb.net 运行 Python 函数
【发布时间】:2014-06-03 18:55:03
【问题描述】:

我是 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

提前谢谢你。

【问题讨论】:

  • 这里是一个关于使用 dynamic 关键字执行 Python 方法的博客的链接,simple-talk.com/dotnet/.net-framework/… 另外,VB6 与 VB.NET 无关,您可能需要编辑标签。跨度>
  • 感谢您的链接!但我一直在寻找 vb.net 语言的答案。无法在 vb.net 中创建 Python 引擎和范围对象。

标签: python vb.net vb6 ironpython ironpython-studio


【解决方案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

【讨论】:

  • 谢谢你!我会试试这个。感谢您的帮助先生!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-08
  • 1970-01-01
  • 1970-01-01
  • 2018-06-16
相关资源
最近更新 更多