thanks for your info, I will try to extend these tests to see the results and post it here if relevant
about speed I doubt that it will be affected
--- Em ter, 26/4/11, LRN <lrn1986@...> escreveu:
De: LRN <lrn1986@...>
Assunto: Re: [Mingw-users] dll created in a different way
Data: Terça-feira, 26 de Abril de 2011, 11:19
On 26.04.2011 17:59, RSPsoftware wrote:
> --- Em ter, 26/4/11, LRN<lrn1986@...> escreveu:
>> On 26.04.2011 16:18, RSPsoftware wrote:
>>> dumppe that is a executable analizer and disassembler detects a dll created with mingw compiled with
>>> windres -o versio_n.o -O coff versio_n.rc gcc -DDPRINTF -enable-stdcall-fixup -shared -O3 \ -Wmissing-prototypes -o rsputil.dll \ versio_n.o def.def rsputil.c e_malloc.c \ dprintf.cas:Subsystem 0003 (Console)while when compiled with vc it is detected as:Subsystem 0002 (Windows)
>>> What implicatons it may have in the execution of this dll that may result in a different behavior ?
>> Try using -mwindows linker option. I'm surprised that you have this
>> problem, since MinGW would not have been able to compile a program with
>> CONSOLE subsystem when you don't have a main() (you have WinMain() and
>> not main(), right?).
> it is a dll,it don´t have a main or a WinMain, just a Dllmain that indeed is optional for compilation
Oh, i haven't noticed the 'dll' part. And the actual question about the
implications. Sorry. Lots of things on my mind right now.
(You DID try -mconsole and/or -mwindows though? Does it make a
difference? Would be a good thing to know whether these options affect DLLs)
As for implications...i'm not aware of any. OTOH you can export
functions from an executable, that is - use an executable file as a
library. So it MIGHT be technically possible (unless someone can give me
a prooflink to PE specs that shows otherwise) to execute a DLL (instead
of importing functions from it)...And that wouldn't work without main()
or WinMain() anyway...so, i guess subsystem type still doesn't matter.
And since we're talking about it...have you ever tried to exec() a DLL?
Or use CreateProcess() on it? I didn't (which is why i'm asking).
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network
management toolset available today. Delivers lowest initial
acquisition cost and overall TCO of any competing solution.
MinGW-users mailing list
This list observes the Etiquette found at
We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated.
You may change your MinGW Account Options or unsubscribe at: