delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1997/03/23/23:53:28

From: colin AT bird DOT fu DOT is DOT saga-u DOT ac DOT jp (Colin Peters)
Subject: Windows API calls that don't work? (Was RE: Stupid stupid question :/)
23 Mar 1997 23:53:28 -0800 :
Sender: daemon AT cygnus DOT com
Approved: cygnus DOT gnu-win32 AT cygnus DOT com
Distribution: cygnus
Message-ID: <01BC386B.709FACA0.cygnus.gnu-win32@gbird0>
Original-To: "'A. Phillip Smith'" <asmith AT www DOT aeinc DOT com>
Original-Cc: "'GNU-Win32'" <gnu-win32 AT cygnus DOT com>
MIME-Version: 1.0
Original-Sender: owner-gnu-win32 AT cygnus DOT com

A. Phillip Smith[SMTP:asmith AT www DOT aeinc DOT com] wrote:
[snip]
>of fact that the mere INCLUSION of a particular Win32 call caused the
>GUI portion of a program to apparently fail (silent death). Note that
>the code was NEVER invoked, as I stated, so usage errors are not at
>issue. 
>
>This is further complicted on Windows NT by the fact that unless you strip
>the executable, the binary will not run. Hence you have no VCC++ debugging OR
>gdb debugging capability. Here's another simple program in it's entirety.
>Compile it per the gcc line. It works fine. Now uncomment the statement
>containing the GetFullPathName call, and rebuild. If you get something
>other than the "silent death" behaviour, please share it. This seems like
>a bug to me, unless there's some other link options of which I'm unaware...
[snip - Code example]

It doesn't seem to be a code generation problem, or at least not an easy
one to reproduce. I must point out that I compiled with Mingw32 and not
the normal Cygnus libraries, so there is some chance (small though it may
be) that the Mingw32 environment removes or influences this bug in some
strange way. Another possibility is that it is an NT thing, since I did
the compile on 95 (where you don't have to strip to get a working exec
either, so debugging is possible with GDB). Anyway the point is that it
works, both ways, no problem. (The compile line under Mingw32 is slightly
different, but essentially comes down to the same arguments for cc1 and
ld).

Are you using a completely vanilla version of GNU-Win32 or have you made
changes to things (like the startup code for example)? Could you send me
a copy of your silently failing binary?

Colin (If it is a compiler bug lets find it and fix it) Peters.

PS. Any confirmations on that statement about NT from other readers?
    Does stripping an executable make it work? Do you *have* to strip
    on NT? Is there a difference between the -s link option and using
    strip after linking?

-- Colin Peters - colin AT bird DOT fu DOT is DOT saga-u DOT ac DOT jp
-- Saga University Dept. of Information Science
-- http://www.fu.is.saga-u.ac.jp/~colin/index.html
-- http://www.geocities.com/Tokyo/Towers/6162/

-
For help on using this list, send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019