[ruby-list:48829] Re: UNLHA32の「Unlha」が見つからない

From: "U.Nakamura" <usa@...>
Date: 2012-07-11 07:36:39 UTC
List: ruby-list #48829
こんにちは、なかむら(う)です。

In message "[ruby-list:48827] UNLHA32の「Unlha」が見つからない"
    on Jul.11,2012 15:49:39, <kouichi_someya@mbe.nifty.com> wrote:
> 失礼します。
> 染谷と申します。
> 
> DLライブラリでUNLHA32のUNLHAを使おうとしましたが、以下のエラーで使うことができ
> ません。
> 
> RuntimeError: can't find the symbol `lha'

使用したrubyのruby -vの出力と正確なバックトレースがないと、普
通は調べようもございません。
私の予想では、
  * 環境はWindows
  * 使っているのはrubyの1.8のどこかのバージョン
  * 本当に出たエラーは
      .../dl/import.rb:127:in `symbol': can't find the symbol `Unlha' (RuntimeError)
ではないかと思うのですが、違いますか?


で、上記がおおよそ正しいという前提でですが、DL::Importableの
externメソッドはあんまり賢くないので、染谷さんの記述ではうま
く動作しません。

    extern "int Unlha(HWND, const char *, char *, DWORD)"

くらいで動くのではないかと思いますが、どうでしょうか。


それでは。
-- 
U.Nakamura <usa@garbagecollect.jp>


In This Thread