[Gambas-user] error calling external function from c library

Benoit Minisini gambas at ...1...
Thu Jun 19 20:36:01 CEST 2008


On jeudi 19 juin 2008, Marcos Antonio Pandolfo Jr wrote:
> Hi
>
> Im using Centos 5 and Gambas 2.0.0 and when I call  a external function in
> a C library this error occurs and Gambas crash with error #6....
>
> EXTERN TEF_inicia(Resultado AS String, Funcao AS String, Valor AS String,
> CuponFiscal AS String, DataFiscal AS String, Horario AS String, Operador AS
> String, ParamAdic AS String) IN "libclisitef" EXEC
> "IniciaFuncaoSiTefInterativoA"
>
> DIM la AS String
> TEF_inicia(la, "000000", "{200,00}", "{12345}", "20080618", "100000",
> "{MARCOS}", "{}")
> The variable "la" receive the return from function TEF_inicia.
>

You incorrectly use the extern function. Did you read the documentation about 
EXTERN declaration on the wiki? If the first argument of the called function 
is a 'char **', you cannot declare it as String. You must allocate some 
memory and send the pointer to this allocation. I will post an example on the 
wiki page.

Regards,

-- 
Benoit Minisini




More information about the User mailing list