BorlandTalk.com Forum Index BorlandTalk.com
Borland discussion newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

DLL startup code

 
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> C++ Builder (Command Line Tools)
View previous topic :: View next topic  
Author Message
Frank
Guest





PostPosted: Wed Apr 14, 2004 8:25 am    Post subject: DLL startup code Reply with quote



Hi there,

lately I run into a discussion about startup objects of DLLs.
Some questions remains:

What's the difference between a windows and a console
DLL? (see linker target options)

Since both are 32 bit DLLs wich may be called from any
32 bit application why do the need different startup
code? (c0d32.obj vs. c0d32x.obj)

Can c0d32w.obj used with both (windows and console)?

Frank
Back to top
Bob Gonder
Guest





PostPosted: Wed Apr 14, 2004 3:19 pm    Post subject: Re: DLL startup code Reply with quote



Frank wrote:

Quote:
What's the difference between a windows and a console
DLL? (see linker target options)

What options would those be?
Use /Tpd for DLL.

Quote:
Since both are 32 bit DLLs wich may be called from any
32 bit application why do the need different startup
code? (c0d32.obj vs. c0d32x.obj)

c0d32 is for normal (US) dll
c0d32w is for wide char dll.
c0d32x is for a dll that doesn't use or support exceptions

Quote:
Can c0d32w.obj used with both (windows and console)?

Yes, as long as the Window or Console app realizes that your dll uses
wide char strings instead of single byte chars.



Back to top
Ed Mulroy [TeamB]
Guest





PostPosted: Wed Apr 14, 2004 3:29 pm    Post subject: Re: DLL startup code Reply with quote



Look for yourself. The source files are in the compiler's
SourceRtlSourcestartup directory.

.. Ed

Quote:
Frank wrote in message
news:407CF593.67389C7A (AT) nospam (DOT) yahoo.de...
Hi there,

lately I run into a discussion about startup objects of DLLs.
Some questions remains:

What's the difference between a windows and a console
DLL? (see linker target options)

Since both are 32 bit DLLs wich may be called from any
32 bit application why do the need different startup
code? (c0d32.obj vs. c0d32x.obj)

Can c0d32w.obj used with both (windows and console)?



Back to top
Frank
Guest





PostPosted: Mon Apr 26, 2004 2:13 pm    Post subject: Re: DLL startup code Reply with quote

Bob Gonder schrieb:
Quote:

Frank wrote:

What's the difference between a windows and a console
DLL? (see linker target options)

What options would those be?
Use /Tpd for DLL.

here an output from a german version:

c:>bcc32 -h -MW
Borland C++ 5.6.4 für Win32 Copyright(c) 1993, 2002 Borland
Verfügbare Optionen (* = Standardeinstellung, xxx = hat Unteroptionen: verwenden
Sie -h -X):
(Hinweis: -X- oder -w-XXX machen im allgemeinen die Definition oder derenAufh
ebung rückgängig, die durch -X) gesetzt wurden
-MW Ziel ist eine Windows-Anwendung
-MWC Ziel ist eine Konsolenanwendung
-MWCDR Ziel ist eine Konsolen-Dll-Datei, die die dynamische RTL verwendet
-MWCDV ... von der VCL benutzt
-MWD Ziel ist eine DLL-Datei oder eine dynamische Link-Bibliothek
-MWDR Ziel ist eine Windows-DLL-Datei, die die dynamische RTL verwendet
-MWDV ... von der VCL benutzt
-MWM Ziel ist ein 32-Bit-Multithreading-Datei
-MWP Ziel ist eine Anwendung, die Delphi-Packages verwendet
-MWR Das Ziel verwendet die dynamische RTL
-MWU Unicode-Anwendung erstellen
-MWV Ziel verwendet den VCL-GUI-Rahmen

The english version should print something like this:
-MW target is a Windows application
-MWC target is a console application
-MWCDR target is a console Dll, using dynamic RTL
-MWCDV ... used by VCL
-MWD target is a DLL file or a dynamic link library
-MWDR target is a Windows DLL, using dynamic RTL
-MWDV ... used by VCL
-MWM target is a 32 bit multithreaded file
-MWP target is an application, using Delphi packages
-MWR target uses dynamic RTL
-MWU create unicode application
-MWV target uses VCL-GUI-frame


No idea what Borland means with Windows and console DLL...
It's difficult for me to understand the startup code, because I'm not familair with
assembler.

Thanks,
Frank

Back to top
Bob Gonder
Guest





PostPosted: Mon Apr 26, 2004 8:02 pm    Post subject: Re: DLL startup code Reply with quote

Frank wrote:

Quote:
Frank wrote:

What's the difference between a windows and a console
DLL? (see linker target options)

c:>bcc32 -h -MW
Borland C++ 5.6.4 für Win32 Copyright(c) 1993, 2002 Borland

The english version should print something like this:
-MW target is a Windows application
-MWC target is a console application
-MWCDR target is a console Dll, using dynamic RTL
-MWD target is a DLL file or a dynamic link library
-MWDR target is a Windows DLL, using dynamic RTL

No idea what Borland means with Windows and console DLL...
It's difficult for me to understand the startup code, because I'm not familair with
assembler.

So then, your question is really, what's the difference between the
compiler (not linker) options -MWCDR and -MWDR

I don't have docs on those. The -M must be new.
On older versions, they would be
-WCDR and
-WDR
C = Console D = DLL, R = RTL

The old help doesn't show those combinations, only

-W
-WC
-WD
-WR

z

Back to top
Display posts from previous:   
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> C++ Builder (Command Line Tools) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.