On Wed, Oct 03, 2007 at 09:35:51AM +0200, Hannes Eder wrote: > Magnus Hagander schrieb: > >>>Since this is an actual API library, perhaps a proper fix is to create a > >>>.def file listing the exports in it, the same way we do for libpq? And > >>>then > >>>we could (should!) also filter the exports the same ways as we do for > >>>libpq > >>>these days. > >>> > >>>(see the exports.txt file in libpq) > >>> > >>>I'll try to find time to look forther at this meanwhile, but if someone > >>>can > >>>confirm that donig an explicit export list is a good way to go, I can > >>>confirm that donig that fixes the build problem :-) > >>> > >>>//Magnus > >>> > >>>---------------------------(end of broadcast)--------------------------- > >>>TIP 6: explain analyze is your friend > >>> > >>> > >>According to: > >> > >>Module-Definition (.def) File EXPORT > >>http://msdn2.microsoft.com/en-us/library/ms856515.aspx > >> > >>whitespace is required between the name and the ordinal in a > >>.def-file, hence in the .def-file DllMain @12 should be used > >>instead of [EMAIL PROTECTED] > >> > > > > you're reading the problem wrong. The 12 is not the ordinal, it's a part > > of the decorated name. > > > > > >/Magnus > > > > > >---------------------------(end of broadcast)--------------------------- > >TIP 2: Don't 'kill -9' the postmaster > > > but, we are compiling C so the names shouldn't be decorated.
We're not talking C++ decoration, we're talking Windows API decoration. Take a look at for example: http://www.geocities.com/yongweiwu/stdcall.htm (there is a reference on MSDN as well, btu I can't find it right now) The @12 is "12 bytes in the argument list to the function". The reason is to make sure the caller calls it with the right number of arguments so as to prevent stack issues. //Magnus ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org