Lua脚本和C#

这对我来说很棘手,希望有人能帮我解决。

情况:我正在使用C#3.5 .NET编写一个应用程序,它使用DLL Imports与用C++编写的DLL进行接口交互,所有这些都很好。我还有一个Lua脚本,该脚本如下:

Width           = XCamera():GetWidth() 
Height          = XCamera():GetHeight() 
Img             = XSensorImage() 

然后例如,有一个函数通过Img计算温度:

function OnFrame() 
     local CoordsTable = { i, j } 
     local PixelTable = Img:GetPixels( CoordsTable ) 
     PixelValue = FromLinearizedADU( PixelTable[1] or 0 ) 
end 

我想要做的是能够将PixelValue返回到我的应用程序中。

XCamera()&XSensorImage()是在初始化相机过滤器并激活Lua脚本时创建的实例。

当该脚本运行时,有没有办法访问Pixel Value?

如果我没有提供足够详细的信息,我很抱歉,请询问如果您需要更多信息,非常感谢您的反馈。

原文链接 https://stackoverflow.com/questions/10220287

点赞
stackoverflow用户1302958
stackoverflow用户1302958

你可以从函数中返回 PixelValue。

return PixelValue;
2012-04-19 01:13:06
stackoverflow用户501459
stackoverflow用户501459

如果是C++ DLL托管了Lua运行时,而不是你的C#应用程序?那么,没有简单的方法可以做到这一点。如果DLL使用共享Lua DLL并且没有锁定扩展,您可能可以加载一个库,该库使用某种形式的进程间通信来与C#应用程序通信。

2012-04-19 02:57:52