From: "染谷 康一" Date: 2010-12-10T12:34:02+09:00 Subject: [ruby-list:47683] Re: プログラム実行時に「[BUG] Segmentation fault」 染谷です。 なかむら(う)さん、ありがとうございます。 Win32APIでポインタが使えなかったんですね。 DLで組んでみます。 ご教授、ありがとうございました。 ----- Original Message ----- >Date: Fri, 10 Dec 2010 10:36:47 +0900 >From: "U.Nakamura" >Subject: [ruby-list:47681] Re: プログラム実行時に「[BUG] > Segmentation fault」 >To: ruby-list@ruby-lang.org (ruby mailing list) > > >こんにちは、なかむら(う)です。 > >In message "[ruby-list:47678] プログラム実行時に「[BUG] Segmentation fault」 " > on Dec.09,2010 22:56:29, wrote: >> $pasori_open = Win32API.new(dllname, 'pasori_open', 'P', 'P') > >ここが問題です。 > >Win32APIは、外部関数がポインタを返すと指定された場合、その返 >されるポインタはC文字列であるという仮定を置いています。 >言い換えると、Win32APIはC文字列以外のポインタを返す外部関数を >サポートしていません。 > >というわけで、このライブラリは構造的にWin32APIで扱うことは不 >可能です。 >別の方法で扱うことを考えてください(DLで叩くとか拡張ライブラリ >でラップするとか)。 > > >それでは。 >-- >U.Nakamura > >