comp.lang.ada
 help / color / mirror / Atom feed
* HELP: DLL's, parameter passing problem
@ 1999-09-27  0:00 Roger Pearse
  1999-09-28  0:00 ` John Walker
  0 siblings, 1 reply; 2+ messages in thread
From: Roger Pearse @ 1999-09-27  0:00 UTC (permalink / raw)


I'd be grateful for a bit of help.  I'm trying to do a DLL in
Aonix ObjectAda 7.1.  I've adapted the supplied example,
and I've run into difficulties when trying
to pass and return a parameter (any parameter).  The code
runs, but the value returned seems to be random.

Can anyone tell me what I'm doing wrong?  Also, can I do
IN OUT parameters - I'd like to pass strings.

TIA

Roger Pearse

-----------USEDLL.EXE (console program)----------------
--Calling the DLL
with ada.text_io;
use ada.text_io;
with ada.integer_text_io;
use ada.integer_text_io;

procedure UseDLL is
 function DLLProc(j : integer) return integer ;
 pragma Import(DLL,DLLProc,"DLLProc");
 v,w : integer;
begin
   v := 1;
   w := 1;
   w := DLLProc(v);
   put(w);
end;
----------------------------DLL.DLL----------------

--Creating the DLL

package P is
   function DLLProc(j : integer) return integer ;
   pragma Export(DLL,DLLProc,"DLLProc");
end;
package body P is
   function DLLProc(j : integer) return integer is
       i : integer;
   begin
       i := j + 1;
       return i;
   end DLLProc;
end P;
with P;
procedure DLL is
begin
  null; -- perform any initializations here
end;

--------------------Code ends---------------------






^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1999-09-28  0:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-09-27  0:00 HELP: DLL's, parameter passing problem Roger Pearse
1999-09-28  0:00 ` John Walker

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox