2017-05-31 4 views
0

J'initialisation Lua dans mon application suivante façon:Comment définir l'objet SerialPort C# en utilisant NLUA?

lua = new Lua(); 
lua.LoadCLRPackage(); 
lua["SerialPort"] = new SerialPort(); 
lua.DoFile("script.lua"); 

Et d'ajouter au projet System.IO.Port pour créer des objets SerialPort. Donc, mon sctript contenant suivant:

import ('Mynamespace') 
import ('System.IO.Ports') 
local myport=SerialPort("COM7",9600) 

après exec je une exception: tentative d'appel (valeur d'un userdata) global 'SerialPort'

Que dois-je changer pour utiliser la construction suivante: SerialPort (String, Int 32) et avoir accès aux champs "BaudRate", "PortName" SerialPort objets dans mon script?

Répondre

0

J'ai ajouté "local myport = {}" avant "myport = SerialPort" et il m'a permis de définir le débit et le nom du port.

import ('ManipulatorGUI') 
local myport={} 
myport=SerialPort 
myport.BaudRate=9600 
myport.PortName="COM6" 
myport:Open()