🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.cppbuilder.nativeapi
Article #8202

Re: Is it possible to use Wininet functions WITHOUT LINKING the Wininet.lib ??

#8202
From: Remy Lebeau (TeamB)
Date: Mon, 15 Nov 2004 18:47
41 lines
3065 bytes
"Bob Gonder" <notbg@notmindspring.invalid> wrote in message
news:17vep0543qqovnp4nt11762l33o181lile@4ax.com...

> Seems to me that the compiler could create a jump
> table of all functions in the dll (used or not), and the
> startup could fill it all in.

That is exactly what it actually does.  But the thing is that when the OS
loader fills in that table at startup, if any of the table entries are not
resolvable, either because the DLL is not found or the function inside the
DLL is not found, then the loader fails and the entire process is aborted
without running any of the application's code at all.

> In this case, I figured the compiler/linker could have
> the table filled with default procs that would return errors.

Nope, because the OS loader will fail the process altogether if the table
can't be filled in entirely.  Any default procs the compiler/linker may
provide would never get a chance to execute anyway.

> That's the part that just seemed so wrong to me.

Talk to Microsoft about it.  There are several functions in the Win32 API
that are provided in Win9x as just stubs and only implemented in WinNT
systems instead.  Probably a compatibility "feature" on Microsoft's part.

> I mean, if it's a new function, what's it doing in an old kernel?

The functions in question already existed in the NT platform at the time the
"old" kernel was created for the 9x systems.  Why they are introduced into
the 9x kernel but not actually implemented, I have no idea.

> And if it's in the old kernel, why wasn't it implimented?

Since those particular functions are file related, I would guess that they
need certain file system capabilities that NTFS provides but FAT doesn't?
Ask Microsoft.


Gambit
Technical Details
Message-ID: <4198f971$1@newsgroups.borland.com>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.icl.net!newsfeed.freenet.de!216.196.110.149.MISMATCH!border2.nntp.ams.giganews.com!nntp.giganews.com!news-hub.cableinet.net!blueyonder!news-peer-test!btnet!newsfeed.bt.es!caladan.landsraad.net!newsgroups.borland.com!not-for-mail
References: <419508ed$1@newsgroups.borland.com> <419516cd$1@newsgroups.borland.com> <41955b2e$1@newsgroups.borland.com> <41955ff6@newsgroups.borland.com> <rftcp05c1rv7h9tahtrs9i6u38kt3au33b@4ax.com> <4197086d$1@newsgroups.borland.com> <17vep0543qqovnp4nt11762l33o181lile@4ax.com>

Show Full Headers
Complete Article Headers
X-Google-Thread: 10cc67,7fd10020e90983c
X-Google-Attributes: gid10cc67,public
X-Google-Language: ENGLISH,ASCII-7-bit
From: "Remy Lebeau \(TeamB\)" <no.spam@no.spam.com>
Newsgroups: borland.public.cppbuilder.nativeapi
References: <419508ed$1@newsgroups.borland.com> <419516cd$1@newsgroups.borland.com> <41955b2e$1@newsgroups.borland.com> <41955ff6@newsgroups.borland.com> <rftcp05c1rv7h9tahtrs9i6u38kt3au33b@4ax.com> <4197086d$1@newsgroups.borland.com> <17vep0543qqovnp4nt11762l33o181lile@4ax.com>
Subject: Re: Is it possible to use Wininet functions WITHOUT LINKING the Wininet.lib ??
Date: Mon, 15 Nov 2004 10:47:52 -0800
Lines: 43
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1409
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1409
NNTP-Posting-Host: 68.69.17.41
Message-ID: <4198f971$1@newsgroups.borland.com>
X-Trace: newsgroups.borland.com 1100544369 68.69.17.41 (15 Nov 2004 10:46:09 -0700)
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.icl.net!newsfeed.freenet.de!216.196.110.149.MISMATCH!border2.nntp.ams.giganews.com!nntp.giganews.com!news-hub.cableinet.net!blueyonder!news-peer-test!btnet!newsfeed.bt.es!caladan.landsraad.net!newsgroups.borland.com!not-for-mail