Mail Archives: djgpp/2001/06/29/13:45:25
| Message-ID: | <3B3CADA3.4000506@earthlink.net>
|
| Date: | Fri, 29 Jun 2001 11:32:35 -0500
|
| From: | Jonathon Merz <jmerz42 AT earthlink DOT net>
|
| User-Agent: | Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:0.9.1) Gecko/20010607
|
| X-Accept-Language: | en,pdf
|
| MIME-Version: | 1.0
|
| To: | djgpp AT delorie DOT com
|
| Subject: | Incorrect resolution of COMSPEC environment variable on WinNT
|
| Reply-To: | djgpp AT delorie DOT com
|
Is this a bug or am I missing something?
With the following code:
main()
{
char *comspec_value = getenv("COMSPEC");
printf("%s\n", comspec_value);
}
When compiled with DJGPP's gcc on WinNT 4, the output is:
C:\WINNT\SYSTEM32\COMMAND.COM
The trouble is that on NT 4, (and I have verified this in my shell) COMSPEC is
set to c:\winnt\system32\cmd.exe. The correct value is output when compiled
under several other compilers.
If anyone sees a mistake, or if it is a bug, knows of a workaround for this,
I'd love to hear it. Alternatively, (This may be a newbie question, but I
can't find any info in the docs on this) if there is a way to identify the
operating system the program is running under, then I suppose I could hardcode
in cmd.exe on WinNT.
Thanks in advance,
-Jon
- Raw text -