PB 電子会議室
カテゴリ:PowerBuilderの開発環境
日付:2000年07月18日 10:52 発信者:MINORU_H
題名:RE(4):PB6.5: VCで作成したActiveXコントロールへ配列を渡す方法について
Takaさん、こんにちは。
>OLEのメソッド呼び出しにおいて、参照で渡したい引数は、
> ole_1.object.method( ref arg_1, ref arg_2 ... )
>と記述する、という事がオンラインブックに書かれています。
>まずはこの方法から試してみてはどうでしょうか。
質問の書き方が悪かった様です。申し訳ありません。
参照で渡したい(コントロール側で操作したい)のではありません。
純粋に配列を渡したいだけです。
だた、コントロール側でshort * にて宣言した場合、PB6.5は実アドレスをコントロールに
渡すのではなく、新たなメモリエリアに展開した値のアドレスを渡す様です。(PB6.5のオ
ブジェクト思考でしょうか)その新規に展開されたメモリエリアにはshort分(2バイト分)
のエリアしか展開されないので困っています。
確かに、この宣言の仕方であれば、PB6.5側ではどこまでをメモリに展開すれば良いのか
分からなくて当然です。安全性を考慮してshort分のエリアしか確保しないのでしょう。
>最悪の場合は、配列渡しをやめて、1つずつ値を送る仕掛けに変更することになるかもしれません。
やっぱりそうなのでしょうか。
>Win32APIなどで long配列を参照渡しするものがありますが、この場合はうまく動いています。
>もっとも外部関数として呼び出すので、PBが独自にバイト数の調整をやっているのかもしれません。
もし、よろしければそのAPIを具体的に教えていただけないでしょうか。もしかしたら何かの糸口
になるかもしれません。
よろしくお願いします。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows NT 4.0
DBMS その他
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.