ネイティブ関数を利用できない

投稿者: 投稿日:2018/08/27(Mon) 11:38:12 No.1618

 こんにちは、お世話になります。

 プロデルを1.5.922に更新したところ、ネイティブ関数を利用すると、エラーが発生するようになってしまいました。
 ちなみに、プロデルリファレンスにある下記のソースでもエラーが発生することを確認しています。

--------------------
メッセージボックスは、ネイティブ関数(ファイル名「user32.dll」、関数名「MessageBoxA」)を作る
メッセージボックスの戻り値型は、整数
メッセージボックスの引数型一覧は、{整数, 文字列, 文字列, 整数}
メッセージボックスを{0, 「こんにちは」, 「タイトル」, 0}で呼び出して結果とする
結果を報告する
--------------------

 エラー内容は、下記の通りです。

--------------------
『メッセージボックスを{0,「こんにちは」,「タイトル」,0}で呼び出して』という部分で
プログラムの実行中にエラーが発生しました。
文法に間違えがないか、指定した値が正しいか、確認してください。

文法や使い方が正しいにもかかわらず、このエラーが表示される場合は、不具合の可能性があります。

発生した例外:
System.InvalidCastException: オブジェクトは IConvertible を実装しなければなりません。
場所 System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
場所 Produire.CoreLibrary.ネイティブ関数.呼び出す(Object[] 実引数一覧)
場所 呼び出す(Object , Object[] )
場所 Produire.TypeModel.外部手順定義.Call(Object baseObject, Object[] args)
場所 Produire.TypeModel.外部手順定義.2(PTypePlugin 0, IProduireClass 1, Object[] 2, 8 3)
場所 Produire.TypeModel.PTypePlugin.10(IProduireValue 0, ICallSite 1, 16 2)
場所 Produire.Model.StaticCallExpression.Invoke(IPrototypeExpression protoExpr, 8 scope)
場所 Produire.ScriptEngine.109(IPhrase 0, IProduireValue 1, 8 2)

[エラー番号901] [はじめ:5行目]
--------------------

 ちなみに、1.5.921では、正常に動作することを確認しております。

 修正いただけると幸いです。

 よろしくお願いいたします。

修正しました

投稿者:ゆうと 投稿日:2018/09/11(Tue) 03:17:23 No.1625

こんばんは ゆうとです。

1.5.924で修正しました。
ご指摘ありがとうございます。

確認しました

投稿者: 投稿日:2018/09/11(Tue) 08:32:13 No.1629

 こんにちは、お世話になります。

 修正確認しました。
 ありがとうございました。

 今後ともよろしくお願いいたします。

▲ページの先頭へ

- WebForum -