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


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0228
YSR自作DLLをHSPで動かしたいのに動かない件2解決


YSR

リンク

2014/2/28(Fri) 04:01:34|NO.60313

ttp://hsp.tv/play/pforum.php?mode=pastwch&num=22578
 ↑を見ながら見よう見まねでDLLを作ってHSPで使おうとしたんだがなぜか成功しないんです。
 具体的には、コンパイルは普通にできるものの、HSPで使う段になって
「外部DLLの呼び出しに失敗しました」と怒られるんです。訳が分からないので助言をお願いします。
 コンパイルしたC++コードは以下の通りで、

#include <windows.h> BOOL APIENTRY DllMain(HINSTANCE hInstance, DWORD fdwReason, PVOID pvReserved) { return TRUE; } INT _declspec(dllexport) WINAPI gobai(int param) { INT result; result = param * 5; return result; }
呼び出すHSPコードは以下の通りです。

#uselib "test.dll" #cfunc gobai "gobai" int mes gobai( 10 )
 ちなみに環境はVC2013でWin32ビルドです。



この記事に返信する


YSR

リンク

2014/2/28(Fri) 04:07:24|NO.60314

自己解決しました。モジュール定義ファイル(defファイル)を定義して
いちいち組み込まないと関数名そのままで使えないのか……。面倒な。



check

リンク

2014/2/28(Fri) 09:45:25|NO.60318

INT _declspec(dllexport) WINAPI gobai(int param)
の前に
extern "C"をつければ関数名がそのまま使えるようになる。



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