From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,c7a0c69fb2811bb3 X-Google-Attributes: gid103376,public From: Tucker Taft Subject: Re: Using C dll from Ada95 Date: 2000/01/11 Message-ID: <387BBFDB.C6D21A16@averstar.com>#1/1 X-Deja-AN: 571405128 Content-Transfer-Encoding: 7bit Sender: news@inmet.camb.inmet.com (USENET news) X-Nntp-Posting-Host: houdini.burl.averstar.com References: <85enr5$e32$1@pollux.ip-plus.net> X-Accept-Language: en Content-Type: text/plain; charset=us-ascii Organization: AverStar (formerly Intermetrics) Burlington, MA USA Mime-Version: 1.0 Newsgroups: comp.lang.ada Date: 2000-01-11T00:00:00+00:00 List-Id: Philipp Boeni wrote: > > Hello everybody! > I want to use a C-dll (created with Visual Studio 6) in Ada95 (Aonix IDE > 7.1.2). Ada-Target: Command-Line App (Win32). The DLL uses the following > function exportation: #define DLLExport extern "C" __cdecl (dllexport) and > is NOT using any MFC enhancements... > So what exactly do I need from the dll to build the Ada-project? If I use > the "myDll.lib"-file (added to the Ada link-path), I receive a Link > 1006-error (error seeking file, could not reach address...) and if I do not > use the lib-file, the linker complains about an undefined external symbol > (the exported function name, that a want to call from Ada)... This is unfortunately a potentially compiler-specific issue. In general, you will need to specify the convention in the pragma Import as something like "dll_cdecl" rather than simply "C". E.g.: function In_Some_DLL(X : ...) return ...; pragma Import(Convention => dll_cdecl, Entity => In_Some_DLL, External_Name => "in_some_dll"); > > Thanks for any help.... > > Philipp Boeni, University of Applied Sciences Aargau, Switzerland -- -Tucker Taft stt@averstar.com http://www.averstar.com/~stt/ Technical Director, Distributed IT Solutions (www.averstar.com/tools) AverStar (formerly Intermetrics, Inc.) Burlington, MA USA