tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^5: return値で
投稿日: 2008/05/26(Mon) 12:29
投稿者魔界の仮面弁士
>     char test[] = "あいう";
>     return (char)test;
> この時点で(char)testの値は文字化けしてしまっています。

文字列の受け渡しをする場合は、VB 側で管理された変数領域に対して、
DLL 側から値を書き込んでいく、という手法が一般的です。
(そのため、戻り値ではなく、引数を使って処理される事が多いです)

上記では、char test[] をそのまま返そうとしているようですが、その配列メモリを
管理しているのは DLL 側であって、VB 側では無い事に注意してください。

もし、VB 側から String 型で受け取れるようにしたいのであれば、
char[] ではなく、BSTR (OLECHAR FAR * )を使うようにしてください。

http://www2.wbs.ne.jp/~kanegon/doc/bstr.txt

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。