New to PL/SQL
Date: Mon, 26 Oct 1998 17:40:04 -0600
Message-ID: <36350854.7EC755C1_at_nospam.com>
Hi,
I am having a little trouble with either my understanding or the interface or both.
I am attempting to create an Oracle form with Oracle 7.3 on an WinNT platform which should call a DLL that I have created using Rational Apex Ada95.
My PL/SQL routine can see the ORA_FFI routine but I place the routine in the database it can no longer see it.
Also, when I run in the PL/SQL editor I get that the function I want to call does not exist when I try to register the function. The library appearently is found and is able to be registered.
Thanks in advance,
Michael
My procedure follows:
PROCEDURE dll_test IS
DLL_Handle ora_ffi.libhandletype;
up_handle ora_ffi.funchandletype;
function ff_up (fhandle ora_ffi.funchandletype, i integer)
return PLS_INTEGER;
pragma interface(C, ff_up, up);
function up (I pls_integer)
return pls_integer is
begin
return (ff_up (up_handle, I));
end;
BEGIN text_io.put_line('Testing DLL invocation');
dll_handle :=
Ora_Ffi.Load_Library
('C:\Rational\Apex_Ada\base\ada\make_dll.ss\make_api.wrk\', 'libmvs.dll');
up_handle := ora_ffi.register_function (dll_handle, 'up', ora_ffi.c_std);
ora_ffi.register_parameter(up_handle,ora_ffi.c_int);
ora_ffi.register_return(up_handle,ora_ffi.c_int);
text_io.put_line ('Done!!');
END Received on Tue Oct 27 1998 - 00:40:04 CET