トップページ > 過去ログ > 記事閲覧
rubyのwin32oleからコールでエラー
日時: 2010/02/02 20:53
名前: まさ

こんにちわ。

AquesTalk2をrubyから使おうと思い、以下のようにサンプル作成をしたところエラーとなってしまいました。
----------以下ソース--------

require 'Win32API'

talk2 = Win32API.new('AquesTalk2Da.dll', 'AquesTalk2Da_PlaySync', 'PL', 'L')

p talk2.call("はじめま'して",100,0)

-------------

AquesTalk2Da_PlaySyncの引数は3つなのに
「wrong number of arguments(3 for 2) (ArgumentError)」として引数がおかしいとのこと。

試しに第3引数を消して実行したところ、
音声は再生されないまま返り値が1001となりました。
(0以外はエラーとのことなので失敗?)

もし、rubyからAquesTalk2を使っている方がいたら正しい呼び出し方を教えていただけますでしょうか。

よろしくお願いします。

Page: 1 |

Re: rubyのwin32oleからコールでエラー ( No.1 )
日時: 2010/02/03 07:21
名前: 管理人

RUBY使ったことないですが、引数指定のPL がPLL じゃないですか?
Re: rubyのwin32oleからコールでエラー ( No.2 )
日時: 2010/02/06 08:30
名前: まさ

ご指摘の通りにしたら無事に動作しました。
なんてことはないWIN32APIの呼び出し方がわかってなかっただけでした。
ありがとうございました!

Page: 1 |