森下 @ CAC です。

森下>   というキーがあること、cygwin1.dll の日付が 1998/12/04 になって

やつさん> このcygwin1.dllって,古いですね.
やつさん> とりあえず,cygwin1-19990115.dll.gzってのがあるので,
やつさん> こいつにしといたほうが(rubyだけに限らず)いいです.
やつさん> # 詳しいことはcygwin関係のWebPageなんかを見てください.

  ご教示ありがとうございます。m(..)m
  http://www.jaist.ac.jp/~fujieda/cygwin/ から、それにパッチがあ
たった状態の cygwin1-19990115+fix.dll.bz2 を頂いてきましたが、そ
れに入れ替えたところ、問題なく動作しているようです。

森下> では Ruby 本の CD-ROM に入っていた rbcw142.zip はどうなん
森下> だろうと思い、こちらは展開しただけの状態で、展開したディレ
森下> クトリに CD-ROM 内に入っていた cygwin1.dll を置き、
森下> $ ./ruby.exe rubytest.rb
森下>   とすると、
...

やつさん> この時,参照されているcygwin1.dllはどれでしょう?

  基本的に exe と同じディレクトリにある dll の優先順位が一番高い
はずだと思います。ということで、その同じディレクトリに置いた
cygwin1.dll、すなわち Ruby 本の CD-ROM に入っていた 99/09/04 午
前 06:28 付けのものです。なお、Visual Studio に含まれていた
Dependency Walker でも、そちらのdll が使用されることを確認しまし
た。
  なお、この dll を /bin (Cygwin の bin を mount して使っていま
す)に置き換え、リブートなどして試してみましたが、現象は同様でし
た。なので、CD-ROM 同梱の cygwin1.dll は使用しないほうが良いので
はないかと思うようになりました。
  ちなみに、snapshot の cygwin1-19991109.dll も試してみましたが、
$ ./ruby.exe rubytest.rb
    0       0 [main] f:\usr\local\src\rubybin\ruby.exe 1003 dll_crt0: parent_alive DuplicateHandle failed, Win32 error 6
ということで、ダメなようでした。

やつさん> rbcw142.zipなruby.exeは,cygwin1-19990115.dllでないと
やつさん> 動かない(と思う)ので,

  ありがとうございます。その通りでした。m(..;)m

--
もりした みんぺい