HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
1201
ふまの#cfuncでの関数で文字列型の戻り値にしたい3未解決


ふまの

リンク

2007/12/1(Sat) 14:47:18|NO.12680

DLL側の方では文字列を返す関数になっているようなのですが、
HSPの#cfuncで呼び出すと、戻り値は整数になってしまいます。
ヘルプでも、
> 外部呼出しの結果取得された整数値(32bit int)をそのまま返します。
と書いてあるし、文字列を返す事は出来ないのでしょうか。



この記事に返信する


Kpan

リンク

2007/12/1(Sat) 15:35:21|NO.12681

一応、dupptr命令でできるかと思います。



FUJI

リンク

2007/12/1(Sat) 18:07:08|NO.12682

dupptr 命令ではサイズが分からない場合は使えないと思います。
kernel32 の lstrcpy や lstrcpyn が使えるのではないでしょうか。

#include "kernel32.as" #uselib "hoge.dll" #cfunc hoge "hoge" sdim text, 1024 lstrcpyn varptr( text ), hoge(), 1024 mes text



Kpan

リンク

2007/12/1(Sat) 23:15:35|NO.12683

dupptrのメモリサイズ1指定で大丈夫のようです。(自動的に確保される?



ONION software Copyright 1997-2021(c) All rights reserved.