Does dllwrap have a maximum number of exports allowed?

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Does dllwrap have a maximum number of exports allowed?

Frederick P Miesterfeld

Hello,

 

I am compiling a project using dllwrap and it seems that I cannot have more than 65520 EXPORTS, is this correct?  Is there a way to increase the amount?  I have been searching everywhere and I have not found a way around the 65520 count.  Do you have any suggestions?  The version I am using is i386-w64-mingw32-dllwrap

 

Thanks,

Fred

 



Nothing in this message is intended to constitute an electronic signature unless a specific statement to the contrary is included in this message.

Confidentiality Note: This message is intended only for the person or entity to which it is addressed. It may contain confidential and/or privileged material. Any review, transmission, dissemination or other use, or taking of any action in reliance upon this message by persons or entities other than the intended recipient is prohibited and may be unlawful. If you received this message in error, please contact the sender and delete it from your computer.
------------------------------------------------------------------------------

_______________________________________________
MinGW-users mailing list
[hidden email]

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
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:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:[hidden email]?subject=unsubscribe
Reply | Threaded
Open this post in threaded view
|

Re: Does dllwrap have a maximum number of exports allowed?

Eli Zaretskii
> From: Frederick P Miesterfeld <[hidden email]>
> Date: Thu, 6 Aug 2015 17:38:26 +0000
>
> I am compiling a project using dllwrap and it seems that I cannot have more
> than 65520 EXPORTS, is this correct? Is there a way to increase the amount? I
> have been searching everywhere and I have not found a way around the 65520
> count. Do you have any suggestions? The version I am using is
> i386-w64-mingw32-dllwrap

Isn't 64K exports an inherent limit of a DLL?

------------------------------------------------------------------------------
_______________________________________________
MinGW-users mailing list
[hidden email]

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
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:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:[hidden email]?subject=unsubscribe
Reply | Threaded
Open this post in threaded view
|

Re: Does dllwrap have a maximum number of exports allowed?

Peter Rockett
On 06/08/15 20:13, Eli Zaretskii wrote:
>> From: Frederick P Miesterfeld <[hidden email]>
>> Date: Thu, 6 Aug 2015 17:38:26 +0000
>>
>> I am compiling a project using dllwrap and it seems that I cannot have more
>> than 65520 EXPORTS, is this correct? Is there a way to increase the amount? I
>> have been searching everywhere and I have not found a way around the 65520
>> count. Do you have any suggestions? The version I am using is
>> i386-w64-mingw32-dllwrap
> Isn't 64K exports an inherent limit of a DLL?
That is due to a (sensible-sounding) limit on the size of the jump table
at the bottom of the DLL? Out of curiosity, what are the other 16
entries used for?

BTW: Why does the OP want to export >64K symbols?

P.

------------------------------------------------------------------------------
_______________________________________________
MinGW-users mailing list
[hidden email]

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
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:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:[hidden email]?subject=unsubscribe
Reply | Threaded
Open this post in threaded view
|

Does dllwrap have a maximum number of exports allowed?

Frederick P Miesterfeld
In reply to this post by Frederick P Miesterfeld

Hello,

 

I have been looking for something that says there is a 64k limit but I haven’t found it.  Can the limit be changed for the dllwrap tool or is it a dll limitation.  If there is a limitation on the number of exports, why?  Is there a way to enlarge it? Is it a windows or memory limitation?

 

Thanks,

Fred



Nothing in this message is intended to constitute an electronic signature unless a specific statement to the contrary is included in this message.

Confidentiality Note: This message is intended only for the person or entity to which it is addressed. It may contain confidential and/or privileged material. Any review, transmission, dissemination or other use, or taking of any action in reliance upon this message by persons or entities other than the intended recipient is prohibited and may be unlawful. If you received this message in error, please contact the sender and delete it from your computer.
------------------------------------------------------------------------------

_______________________________________________
MinGW-users mailing list
[hidden email]

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
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:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:[hidden email]?subject=unsubscribe
Reply | Threaded
Open this post in threaded view
|

Re: Does dllwrap have a maximum number of exports allowed?

Peter Rockett
On 07/08/15 14:14, Frederick P Miesterfeld wrote:

Hello,

 

I have been looking for something that says there is a 64k limit but I haven’t found it.  Can the limit be changed for the dllwrap tool or is it a dll limitation.  If there is a limitation on the number of exports, why? 


I see your point on the absence of information... But maybe https://msdn.microsoft.com/en-us/library/ms683212.aspx gives a clue. In particular, the lpProcName argument of GetProcAddress specifies that "If this parameter is an ordinal value, it must be in the low-order word; the high-order word must be zero" implying that the DLL export table has, at most, a 16-bit address, hence limiting the number of exports to 2^16.

Is there a way to enlarge it? Is it a windows or memory limitation?


The above implies that the 16 bit limitation could only be modified by re-engineering the architecture of the DLL. i.e., no!

(And why do you want to export so many symbols? If you really need this number, could you export a pointer to a table of entry points within the DLL? Slower due to the indirection and messy, but...)

P.

------------------------------------------------------------------------------

_______________________________________________
MinGW-users mailing list
[hidden email]

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
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:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:[hidden email]?subject=unsubscribe
Reply | Threaded
Open this post in threaded view
|

Re: Does dllwrap have a maximum number of exports allowed?

Frederick P Miesterfeld

Hello,

 

Thanks for the information, so 16 bit is the maximum amount.   I have never seen a dll being created with so many exports, it is a fluke so I will just chop out the exports that I feel aren’t so important.

 

Thanks for the help!

Fred

 

From: Peter Rockett [mailto:[hidden email]]
Sent: Friday, August 07, 2015 6:32 PM
To: [hidden email]
Subject: Re: [Mingw-users] Does dllwrap have a maximum number of exports allowed?

 

On 07/08/15 14:14, Frederick P Miesterfeld wrote:

Hello,

 

I have been looking for something that says there is a 64k limit but I haven’t found it.  Can the limit be changed for the dllwrap tool or is it a dll limitation.  If there is a limitation on the number of exports, why? 


I see your point on the absence of information... But maybe https://msdn.microsoft.com/en-us/library/ms683212.aspx gives a clue. In particular, the lpProcName argument of GetProcAddress specifies that "If this parameter is an ordinal value, it must be in the low-order word; the high-order word must be zero" implying that the DLL export table has, at most, a 16-bit address, hence limiting the number of exports to 2^16.


Is there a way to enlarge it? Is it a windows or memory limitation?


The above implies that the 16 bit limitation could only be modified by re-engineering the architecture of the DLL. i.e., no!

(And why do you want to export so many symbols? If you really need this number, could you export a pointer to a table of entry points within the DLL? Slower due to the indirection and messy, but...)

P.



Nothing in this message is intended to constitute an electronic signature unless a specific statement to the contrary is included in this message.

Confidentiality Note: This message is intended only for the person or entity to which it is addressed. It may contain confidential and/or privileged material. Any review, transmission, dissemination or other use, or taking of any action in reliance upon this message by persons or entities other than the intended recipient is prohibited and may be unlawful. If you received this message in error, please contact the sender and delete it from your computer.
------------------------------------------------------------------------------

_______________________________________________
MinGW-users mailing list
[hidden email]

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
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:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:[hidden email]?subject=unsubscribe