掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Cで作成されたDLLの呼び出しで失敗します (ID:24800)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
OS WinXP Pro SP1 Delphi 7 Pro Cで作成されたDLL内のメソッドの呼び出しについて質問します。 メソッドの呼び出し形式が以下のように定義されています int FuncHoge(int *err, int mode) modeを指定すると、int型戻り値に結果が取得され、失敗した場合はerrに 詳細なエラーコードが返ります Delphi側でこの呼び出しを function FucnHoge(var arc_errno: Integer; mode: Integer): Integer; stdcall; external 'hoge.dll'; 上記のように定義し、呼び出しのテストメソッドとして procedure TForm1.Button1Click(Sender: TObject); var err: Integer; return: Integer; begin return := FucnHoge(err,1); end; としました。デバッガで追って行くと、returnに値は取得できているのですが、このメソッドを抜けると アドレスの読み込み例外が発生します。 エラーコードの定義部分でポインタと変数の扱いに問題があると思われerrの型定義を ^Integerなどとしてみましたが、解消されませんでした。 Delphi側での定義と呼び出しの記述についての不備をご指摘いただければと思います。 宜しくお願いします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.