Díky, tak už mi to hazí chyby. Snažím se právě implementovat tuhle funkci: -tohle je z dokumentace: cmd_ln_t* cmd_ln_init (cmd_ln_t * inout_cmdln, arg_t const * defn, int32 strict, ... ) A tohle je moje jakási implementace :
<DllImport("D:\...\pocketsphinx.dll")> _
Public Function cmd_ln_init(ByVal inout_cmdln, ByVal defn, ByVal strict As Integer, ByVal ParamArray args() As String)
End Function
A takhle ji volám:
Dim conf = cmd_ln_init(Nothing, Nothing, True, "-hmm", modeldir & "/hmm/en_US/hub4wsj_sc_8k", "-lm", modeldir & "/lm/en/turtle.DMP", "-dict", modeldir & "/lm/en/turtle.dic", Nothing)
Problém je že vyhazuje MarshalDirectiveException o tom že : Omezení PInvoke: Nelze vracet variantní hodnoty. Co jsem googlil tak by to mělo znamenat, že musím přesně natypovat všechny parametry funkce, jinak to nepojede.A to je můj problém: Třeba první objekt by měl být jakýsi objekt typu cmd_ln_t, ale jak se k se k referenci na něj mám dostat?
|