From: "染谷 康一" Date: 2012-07-13T14:57:23+09:00 Subject: [ruby-list:48836] Re: UNLHA32の「Unlha」が見つからない 失礼します。 染谷です。 なかむら(う)さん、大変申し訳ございませんでした。 ご指摘通り、nilを渡していたため発生していました。 修正し実行したところ、今度はちゃんと動作しました。 本当にお手数お掛けしました。 ありがとうございました。 ----- Original Message ----- >Date: Fri, 13 Jul 2012 11:53:42 +0900 >From: "U.Nakamura" >Subject: [ruby-list:48835] Re: UNLHA32の「Unlha」が見つからない >To: ruby-list@ruby-lang.org (ruby mailing list) > > >こんにちは、なかむら(う)です。 > >In message "[ruby-list:48834] Re: UNLHA32の「Unlha」が見つからない" > on Jul.12,2012 16:58:09, wrote: >> ruby -v chozaimeisai.rb >> ruby 1.8.7 (2010-12-23 patchlevel 330) [i386-mswin32] >> C:\lha.rb:86: undefined method `Unlha' for module `UnLha32Lib' (NameError) >> from chozaimeisai.rb:1:in `require' >> from chozaimeisai.rb:1 >> >> 今度は何が原因か分かりません。 >> >> どのようにすれば良いのか、ご教示願います。 > >lha.rbは染谷さんの手元にしか存在しないファイルですので、そこ >でエラーが出ました分かりませんと言われても、染谷さん以外には >調査は不可能なような気がします。 > > >なんとなくエスパー能力が宿ったような気がするのでいちおう解決 >策を提示すると、リファレンスマニュアルには、DL::Importableの >externメソッドについて、「頭文字が大文字の場合は小文字に自動 >的に変換されます。 」と明記されているようです。 >なので、Unlha ではなく unlha という名前で呼び出す必要があるの >ではないでしょうか? > >あと、HWNDはunsigned long扱いなのでnilは渡せません(0を渡しま >しょう)とか、char *にはなぜかnilを渡せない(""を渡すとかプロト >タイプ側をvoid *にする)とかいうことにはまるんじゃないかという >未来も予知してしまったので、老婆心ながら付記しておきます。 > > >それでは。 >-- >U.Nakamura > >