[Namazu-devel-ja 1422] Re: Windows Vista での動作確認

Tadamasa Teranishi yw3t-trns @ asahi-net.or.jp
2007年 1月 13日 (土) 01:58:17 JST


寺西です。

Tadamasa Teranishi wrote:
> 
> NOKUBI Takatsugu wrote:
> >
> >   Vistaのcmd.exeが変わった可能性は大いにありますよね。幸いなことに、自
> 
> 簡単なプログラムを書いて、cmd.exe 側の問題か、getopt の問題かの切り分け
> をしたいと思います。
> しかし、cmd.exe 側の問題だと、対処が大変ですね。

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char* argv[])
{
	int i;

	for (i = 0; i < argc; i++) {
		fprintf(stdout, "%d [%s]\n", i, argv[i]);
	}

	return 0;
}

こんなプログラムを VC++ と MinGW の GCC でコンパイルして、
xxx.exe, xxx2.exe を作りました。
それを XP と Vista で実行すると、

[XP]
C:\> xxx "*u*"
0 [xxx]
1 [*u*]

C:\> xxx2 "*u*"
0 [xxx2]
1 [*u*]


[Vista]
C:\> xxx "*u*"
0 [xxx]
1 [*u*]

C:\> xxx2 "*u*"
0 [xxx2]
1 [autoexec.bat]
2 [Documents and Settings]
3 [namazu]
4 [System Volume Information]
5 [Users]

と、Vista で MinGW + GCC でコンパイルしたプログラムを動かすと、
ワイルドカードが展開されてしまっています。

# 何故だ???

いったい誰が展開しているのやら???

ちなみに " *u*" だと展開されません。
C:\> xxx2 " *u*"
0 [xxx2]
1 [ *u*]
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns @ asahi-net.or.jp
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E




Namazu-devel-ja メーリングリストの案内