Article View: borland.public.cppbuilder.nativeapi
Article #329Re: access function in dll
From: Denville Longhurst
Date: Wed, 30 Apr 2008 18:29
Date: Wed, 30 Apr 2008 18:29
67 lines
3892 bytes
3892 bytes
I am certain now that, as you say, the dll writer goofed up. As well as looking 'inside' the dll with WinHex I have used IMPDEF, IMPLIB and DEPENDS.EXE, none of which include the function among those exported. For info, the .dll comes from a firm called Digi, manufacturers of embedded network devices, some of which I have programmed for special functionality (all that is fine). As part of the SDK they supply a .dll containing functions that a PC/Windows app can use to discover and list all units on the network, and it is this dll that is missing the essential function. I can see that what has happened is that the dll has recently been modified by the addition of a new version of this function and that's where, somehow, it got gooed up. Unfortunately the sample source using the dll is writen for VC++ which I don't have, but I bet if I did, it wouldn't compile. I was just a bit worried that Microsoft might have sneaked some new access mechanism into VC++. Following your previous reply I had the confidence to put the manufacturer on the spot and they are now (I hope) taking it seriously. Tks again, Denville. "Remy Lebeau (TeamB)" <no.spam@no.spam.com> wrote in message news:48189e32$1@newsgroups.borland.com... > > "Denville Longhurst" <denville@metco.co.uk> wrote in message > news:4818202a$1@newsgroups.borland.com... > >> The function is absolutely fundamental, the support documentation >> states that it must be the first function called to get a handle to >> one or more embedded devices attached to the network. > > Then it should be exported properly. If it is not, then the DLL author > likely goofed up when compiling it. > >> I examined the .dll using a program called WinHex which >> provides a hex and an ascii dump of any file. > > That is not the best way to examine executables. I suggest you use an > actual PE viewing tool instead. That will show you the actual exports > table (and imports, resources, etc). > >> All of the functions within the dll are listed twice > > Which means nothing without knowing what kind of tables they are actually > listed in. > >> once in what is obviously the export list, and again later I >> presume at the implementation > > Implementation names are not stored anywhere in the DLL. They are > resolved to memory addresses by the compiler. The exports table is a > look-up table that maps the exported name to the cooreponding address > within the DLL. > >> I think the dll supplied with this sdk must be broken, I just wanted to >> check that MS hadn't added some new mechanism >> that I wasn't aware of. > > Which DLL specifically are you actually trying to use? Which function? > Is this a Microsoft DLL, or a third-party DLL? > > > Gambit >
Technical Details
Message-ID:
<4818baa1$1@newsgroups.borland.com>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!border1.nntp.dca.giganews.com!border2.nntp.dca.giganews.com!nntp.giganews.com!newspeer1.nac.net!newsfeeds.ihug.co.nz!ihug.co.nz!newsgroups.borland.com!not-for-mailReferences:
<4817969d$1@newsgroups.borland.com> <4817ac85$1@newsgroups.borland.com> <4818202a$1@newsgroups.borland.com> <48189e32$1@newsgroups.borland.com>Show Full Headers
Complete Article Headers
X-Google-Thread: 10cc67,6110533675898442 X-Google-Attributes: gid10cc67,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit From: "Denville Longhurst" <denville@metco.co.uk> Newsgroups: borland.public.cppbuilder.nativeapi References: <4817969d$1@newsgroups.borland.com> <4817ac85$1@newsgroups.borland.com> <4818202a$1@newsgroups.borland.com> <48189e32$1@newsgroups.borland.com> Subject: Re: access function in dll Date: Wed, 30 Apr 2008 18:29:52 -0000 Lines: 69 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.3138 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 X-RFC2646: Format=Flowed; Response NNTP-Posting-Host: 82.8.28.29 Message-ID: <4818baa1$1@newsgroups.borland.com> X-Trace: newsgroups.borland.com 1209580193 82.8.28.29 (30 Apr 2008 11:29:53 -0700) Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!border1.nntp.dca.giganews.com!border2.nntp.dca.giganews.com!nntp.giganews.com!newspeer1.nac.net!newsfeeds.ihug.co.nz!ihug.co.nz!newsgroups.borland.com!not-for-mail X-Original-Bytes: 3736