Tuve que mapear con openDBX las funciones odbx_set_argument y la odbx_get_argument.<br><br>Estoy probando la set, y me tira ese error de FFi. Creo que es un quilombo con el void pues es la primer función que mapeamos con ello.<br>
<br>La función de openDBX es así:<br><pre>int <b>odbx_set_option</b>(<br> odbx_t* <i><b>handle</b></i>,<br> unsigned int <i><b>option</b></i>,<br> void* <i><b>value</b></i> )<br><br><br><font size="4">Acá hay un ejemplo en C de cómo se usa:</font><br>
<br>option = ODBX_TLS_ALWAYS;<br>if( ( err = odbx_set_option( handle, ODBX_OPT_TLS, (void*) &option ) ) < 0 )<br>{<br> fprintf( stderr, "odbx_set_option(): %s\n", odbx_error( handle, err ) );<br> odbx_finish( handle );<br>
return err;<br>}<br><br></pre><br>Así es el método apiSetOption de la clase OpenDBX<br><br>apiSetOption: handle option: anOption value: aValue<br> "int odbx_unbind(odbx_t*)"<br> <cdecl: long 'odbx_set_option' (ulong ulong void*) module: 'opendbx' ><br>
^self externalCallFailed<br> <br><br>Probé poner void*, void, ulong y ulong* pero en todos los casos me tiró el mismo error.<br><br>Así se usa éste método en la clase DBXConnection:<br><br>err := OpenDBX apiSetOption: self option:32 value:1. <br>
<br>No lo subí porque no anda (y además porque squeaksource está caído), pero si no lo subo no se si me van a poder ayudar....¿quieren que igualmente lo suba? ¿alguna idea o pregunto en squeak-dev?<br><br>saludos,<br><br>
mariano<br>