RE:SusieプラグインのGetPluginInfo()を動的リンクで呼び出すとき
(
みやさか
)
2001/06/14 03:33
> SusiePlug-inを自分で作っているソフトで動的リンクしようと
> したのですが、Spi_api.txtにある通りGetPluginInfo関数を
> 呼び出してみたところ、バグってしまいました。
#この状況で「バグってしまった」という言い方は、プログラマが使う表現と
#しては不適切な表現なのですが(^^;。
どういう風に動かないのか、それがわからないので何ともいえませんが、
> モジュールの読み込みには失敗してないので引数の渡し方の
> 失敗だと思うのですが、この情報を格納する文字列バッファは
> どういったものを渡せばよいのでしょうか?
> char型の配列を作ってLPSTR型にキャストして渡したのですが、
> これではダメということでしょうか。
バッファはそれでいいはずです。ほかには、バッファの大きさ(buflen)や
情報番号(infono)が間違っていないか、確認してみてはどうでしょうか。
あと、GetPluginInfo() を指す関数ポインタ( GetProcAddress() の戻り値を
保存する )の定義ですけど、これがもし、
int (*GetPluginInfo)(int,LPSTR,int);
となっていたら、GetPluginInfo() がリターンした直後にクラッシュします。
int (PASCAL *GetPluginInfo)(int,LPSTR,int);
または
int (WINAPI *GetPluginInfo)(int,LPSTR,int);
のように、呼び出し規約 PASCAL or WINAPI の明示が絶対に必要です。
--「RE:SusieプラグインのGetPluginInfo()を動的リンクで呼び出すとき」に対するコメント--
タイトル(Subject):
お名前(Your name):
Mail address:
Password:
:入力しておくとあとで削除できます
Your message:
7thBridge P ver0.26 (c)Takechin