Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Can I use a callback function in DLL with ORA_FFI

Can I use a callback function in DLL with ORA_FFI

From: cf <news_at_sitinfo.com>
Date: Fri, 19 Oct 2001 10:19:40 +0200
Message-ID: <3bcfe21c$0$14584$4d4eb98e@read.news.fr.uu.net>


Hi,

I have a DLL with a Function using a callback function.

Sample :
c:\MyDll.dll in This Dll a function : int MyFunction(char* param1, Wit MyCallbackFunction)
Description of MyCallBackFunction : Typedef void (*Wit) (int param2, char* param3)

/****************************************/
PACKAGE Sample1 IS
FUNCTION MyFunction (param1 Varchar2, ???) RETURN NUMBER; END;
/****************************************/
PACKAGE BODY Sample1 IS

     lh_Sample1 ora_ffi.libHandleType;
     ff_MyFunction_handle ora_ffi.funcHandleType;

Function ff_MyFunction(ff_Handle ora_ffi.funcHandleType, param1 Varchar2, MyCallbackFunction ???) RETURN NUMBER;

   PRAGMA INTERFACE(C, ff_MyFunction,11265);

MyCallBackFunction ???

FUNCTION MyFunction (param1 Varchar2, MyCallbackFunction ???) RETURN NUMBER Is
  BEGIN
    return (ff_MyFunction(ff_MyFunction_HANDLE, param1, MyCallbackFunction));
  END Init;
BEGIN
  lh_Sample1 := ora_ffi.load_library('C:\','MyDll.dll');   ff_MyFunction_handle :=
ora_ffi.register_function(lh_Sample1,'MyFunction',ora_ffi.C_STD);

  ora_ffi.register_Parameter(ff_Init_handle,ORA_FFI.C_CHAR_PTR);
  ora_ffi.register_Parameter(ff_Init_handle,???);
  ora_ffi.register_return(ff_Init_handle,ORA_FFI.C_DOUBLE);
END;
/****************************************/

Could you give me some samples ?

Thanks in advance.
Christophe. Received on Fri Oct 19 2001 - 03:19:40 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US