This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: w32api funny
- From: Corinna Vinschen <corinna-cygwin at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Wed, 1 Jul 2009 13:06:58 +0200
- Subject: Re: w32api funny
- References: <4A4B3B8A.9020800@gmail.com>
- Reply-to: cygwin at cygwin dot com
On Jul 1 11:33, Dave Korn wrote:
>
> I noticed this when we added StrStrI to setup.exe, and I forgot to bootstrap
> the generated files; I got a bad exe that didn't work for me because it
> imported StrStrIA from comctl32.dll (which was the next -l option in the
> LDFLAGS), which - at least on w2k - doesn't actually export that function:
>
> $ for x in /usr/lib/w32api/lib{comctl32,shell32,shlwapi}.a ; do echo $x; nm $x
> | grep StrStrI ; done
> /usr/lib/w32api/libcomctl32.a
> 00000000 T _StrStrIW@8
> 00000000 I __imp__StrStrIW@8
> 00000000 T _StrStrIA@8
> 00000000 I __imp__StrStrIA@8
> /usr/lib/w32api/libshell32.a
> 00000000 T _StrStrIW@8
> 00000000 I __imp__StrStrIW@8
> 00000000 T _StrStrIA@8
> 00000000 I __imp__StrStrIA@8
> /usr/lib/w32api/libshlwapi.a
> 00000000 T _StrStrIW@8
> 00000000 I __imp__StrStrIW@8
> 00000000 T _StrStrIA@8
> 00000000 I __imp__StrStrIA@8
>
> $ cd $WINDIR/system32
>
> $ for x in comctl32.dll shell32.dll shlwapi.dll ; do echo $x ; dumpbin
> /exports $x | grep StrStrI ; done
> comctl32.dll
> shell32.dll
> 403 AB 00117E97 StrStrIA
> 404 AC 00117E9D StrStrIW
> shlwapi.dll
> 710 F4 0000F2B4 StrStrIA
> 711 F5 00007E9E StrStrIW
>
> I checked on an XP system as well, and it's not exported from comctl32.dll
> there either. The definitions come from here:
>
> /usr/src/w32api-3.13-1/lib/comctl32.def:125:StrStrIA@8
> /usr/src/w32api-3.13-1/lib/comctl32.def:126:StrStrIW@8
>
> and are present in CVS HEAD.
I removed all the erroneously defined StrFOO entry points from comctl32.a.
Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Red Hat
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple