- 810 名前:809 mailto:sage [03/12/02 21:45]
- CodeWarrior Pascalで実行できたソースコードの例
プラグイン側の関数は2数の和を返す関数。 type fPtr = function (a,b:integer):integer; {←ここがTHINKでNG。型は必要に応じて変える} fHdl = ^fPtr; var plugHdl: fHdl; plugin: fPtr; c: integer; procedure loadPlugin; {とりあえずファイル名、リソースタイプ、IDは決め打ち} var iFileRef, iErr: integer; begin iFileRef := OpenResFile('pl1'); {プラグインファイルを開く} plugHdl := fHdl(Get1Resource('MyPL', 128)); {メモリ上に読み込み} iErr := FSClose(iFileRef); end; begin loadPlugin; {プラグインをファイルから読み込む} hlock(handle(plugHdl)); {ハンドルロック} plugin := plugHdl^; {一旦ポインタに移し替えないとダメっぽい} c := plugin(3,6); {関数呼び出し。プラグインは2数の和を返す関数}
|

|