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


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0318
名無しcallfunc 呼び出し規約6解決


名無し

リンク

2017/3/18(Sat) 12:20:15|NO.78579

callfuncによる関数呼び出しは、どの呼び出し規約が使われているのですか。



この記事に返信する


eol

リンク

2017/3/19(Sun) 04:28:36|NO.78588

cdeclとstdcallです。
どちらの関数でも使えるようになってます。



名無し

リンク

2017/3/19(Sun) 19:08:42|NO.78597

どうやって判断しているのでしょうか。



名無し

リンク

2017/3/19(Sun) 19:11:44|NO.78598

スタックを解放するかはどうやって判断しているのでしょうか。



eol

リンク

2017/3/20(Mon) 04:03:04|NO.78605

cdeclかsdcallかといった判別はしていません。
どちらでも大丈夫なような呼び出し方法を使っています。
>スタックを解放するかはどうやって判断しているのでしょうか。
スタックは関数側がどう使っていても元に戻すようになってます。



eol

リンク

2017/3/20(Mon) 04:06:15|NO.78606

具体的にはソースを見てください。
http://dev.onionsoft.net/trac/openhsp/browser/trunk/hsp3/win32gui/hsp3extlib.cpp
の398行目call_extfuncがコア部分です。



名無し

リンク

2017/3/20(Mon) 17:06:47|NO.78615

アセンブリですか…
全然読めません(T_T)
時間があるときにゆっくり研究したいと思います。
>どちらでも大丈夫なような呼び出し方法を使っています。
よかったです。安心しました。
非常に助かりました。
ありがとうございました。



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