delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT sourceware DOT cygnus DOT com> |
List-Archive: | <http://sourceware.cygnus.com/ml/cygwin/> |
List-Post: | <mailto:cygwin AT sourceware DOT cygnus DOT com> |
List-Help: | <mailto:cygwin-help AT sourceware DOT cygnus DOT com>, <http://sourceware.cygnus.com/ml/#faqs> |
Sender: | cygwin-owner AT sourceware DOT cygnus DOT com |
Delivered-To: | mailing list cygwin AT sourceware DOT cygnus DOT com |
Message-ID: | <41FBEBB67B309B4091A19709617C3BF4487D@TRITON.corp.iapetus.com> |
From: | Michael Nelson <mikenel AT iapetus DOT com> |
To: | "'Carl Thompson'" <cet AT carlthompson DOT net>, |
Michael Nelson | |
<mikenel AT iapetus DOT com> | |
Cc: | Cygwin List <cygwin AT sourceware DOT cygnus DOT com> |
Subject: | RE: Where can I get Cygwin 20.1b? |
Date: | Thu, 15 Jun 2000 19:55:33 -0400 |
MIME-Version: | 1.0 |
X-Mailer: | Internet Mail Service (5.5.2650.21) |
X-OriginalArrivalTime: | 15 Jun 2000 23:55:23.0803 (UTC) FILETIME=[2BC92EB0:01BFD725] |
> > Use of dllimport is unnecessary, just link with the import lib. > > Really? Is that true of _all_ Windows compilers? GCC and VC at least, those are the only two Win32 compilers I've used to a significant extent. > Just your externally visible symbols are exposed, not the > "guts" . They are > all exposed and accessible under Windows too, regardless of what you > export! Don't be fooled into thinking that just because you > don't put it in > your export list that it is not exposed. LoadLibrary() and > GetProcAddress() > work just fine regardless of whether or not the symbol was > exported to an > import library! > So I hope your company doesn't rely on its > DLLs "guts" not > being exposed simply because you don't put an entry in your > .def file... With VC, if it isn't in a .DEF file or dllexport'd, it isn't accessible via GPA(). I just double checked all of this, and it seems GCC is a bit more tricky. If you have 0 symbols marked with dllexport all public symbols get exported. If you have >0 symbols marked with dllexport, only they get exported. I think this is where the mixup is. What I miss on UNIX is the latter feature, the ability it to only export exactly these symbols. -mike -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |