- PR -

Delphiのエラー

1
投稿者投稿内容
IPホン
大ベテラン
会議室デビュー日: 2005/09/13
投稿数: 127
投稿日時: 2006-05-11 17:17
Insider.Netにて、デルファイのプログラムエラーの相談は不適合かもしれませんが、
記載することをご了承ください。


プログラムの実行直後に下記エラーが発生し、解決法が分かりません。

<エラー内容>(全文)
デバッガ例外が発生
プロジェクトxxxxxがEStringListErrorクラスの例外を生成しました。
リストのインデックスが範囲を超えています(0)
プロセスは停止しています。再開するにはステップ実行または実行を選択
してください。


<環境>
Windows2000 Pro
Borland Delphi Professional Version6.0

<コード抜粋>
program xxxxxxx

uses
Forms,
Main in 'Main.pas' {Main_frm};

{$R *.res}

begin
Application.Initialize;
Application.CreateForm(TMain_frm,Main_frm); -->この後、☆へ飛ぶ
Application.Run
end.

☆classes.pas内(コード抜粋)
procedure TString.Error(const Msg: String; Data: Integer);

function ReturnAddr: Pointer;
asm

MOV EAX,[EBP+4]
end;

begin
raise EStringListError.CreateFmt(Msg, [Data]) at ReturnAddr;
-->ここで、エラー発生します。
end;


上記エラーに関して、同じようなことを遭遇された方、もしくは、何かアドバイスを頂ける方、よろしくお願いします。
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2006-05-11 18:09
プロシージャ、TString.Errorは何かエラーが発生して呼ばれているはずです。

Application.CreateFormからTString.Errorの間の呼び出し履歴をたどり、エラーが発生した原因を調べてみては
IPホン
大ベテラン
会議室デビュー日: 2005/09/13
投稿数: 127
投稿日時: 2006-05-12 11:00
ご返信ありがとうございました。

このプログラムに関しては、INIファイルとセットで
実行することになっており、このINIファイルを調査した所、
不足していた設定項目があり修正したら特にエラーもなく
実行できました。

返信してくださった方々、ありがとうございました。

呼び出し履歴など、知らなかったこともありましたので、
勉強になりました。

1

スキルアップ/キャリアアップ(JOB@IT)