HSPでDLLのテストをしてみました
HSP3.1でDLL導入のテストをしてみたのですが、
すごく簡単になってました。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/== Cのソース(VC++) ==
#include
#define EXPORT extern "C" __declspec (dllexport)EXPORT int warizan(double *x, int n, int n2)
{
int i;
*x = (double)n / (double)n2;
return 0;
}
== HSPのソース ==
#uselib "DLL_TEST.dll"
#func warizan "warizan" var, int, intwarizan x, 100,25
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
本当に、これだけでいけますね。
HSP2.6のときなんて、DLLを使うとなったら、
やれ、hspdll.h やら hsp2lib.lib を使えだの、
やれ、タイプ名を番号で入れろだの、
大変分かりにくかったですけれど。
ハマリポイントは、#funcの書き方ですかね。
引数の最初の2つは「スペース」、
残りの引数は「カンマ」で区切ります。
ヘルプを見ても気づきにくくて、はまりますねorz
(1) Easy3D の C++版は使いたい
(2) でもHSPコンテストには出したい…
↓
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#uselib "ロコ.dll"
#func Init "Init" int
#func MainLoop "MainLoop" int
screen
Init 0
MainLoop 0
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
こんなの出したら、HSPコンテストTVが
微妙な空気になってしまいますね(汗)
HSPコンテスト TV
(;・_・)(-・-_-・-)(−_−;)