範囲チェックエラーについて

解決


AS  2025-02-08 21:08:21  No: 151768  IP: 192.*.*.*

私は、同じプログラムを名前を変えて使用しています。
実用と開発とを区別するためなどです。
他人が開発できるようにという意図で作ったプログラム名があったのですが、
大改造の後、その名前のプログラムを作ろうとしたらエラーがでました。
下の質問は、自分が使っている名前ではエラーは出ません。

edit2.text=''の場合も、そうでない場合も範囲チェックエラーが出ます。
何かヒントをください。
年寄りなので、ボケた質問ばかりで恐縮ですが、よろしくお願いします。

変数Aはinteger です。 
  if edit2.text='' then
  begin
    showmessage('WAIT');
    PassWord:=0//-------------------------ここでエラーが起きます。
  end
  else
  begin
  showmessage('WAIT2');
  PassWord:=StrToInt(edit2.text);//-------------------------ここでエラーが起きます。
  end;

編集 削除
AS  2025-02-08 22:11:07  No: 151769  IP: 192.*.*.*

すみません、この投稿削除してください。

エラーが起こるというところを削除しても、エラーが起こりました。
追加の投稿をします。

編集 削除
AS  2025-02-08 23:48:36  No: 151770  IP: 192.*.*.*

procedure onCreateのend直前までエラーなしになりました。
showmessageのokボタンをクリックするとエラーが起こります。
また、showmessageが表示されないところがあります。
これが原因で最初の質問になったのだと思います。
showmessage('WAIT2');
showmessage('WAIT3');
WAIT3は表示されますがWAIT2は表示されない場所があるんです。

何かヒントをお願いします。

procedure onCreate
begin
-------------------- 
 showmessage('WAIT5');
end

編集 削除
AS  2025-02-09 05:21:53  No: 151771  IP: 192.*.*.*

Kというプログラムをコンパイルしたら、エラーが出たので、
CIというプログラムを作り、使用してもらっています。
で、KIというプログラムを作っていました。
このKIでエラーばかり出るのでこの投稿になったのですが、
Kをコンパイルしてみたら成功しました。
K.dprをKI.dprに名前だけ変えたら、ここに書いたエラーは消え、
コンパイルできましたが、別の場所でうまく作動しません。
20年以上前に作った部分なので、プログラムミスではないのですが??

KI.dprを元に戻してもここに書いたエラーは起こりません。
解決にします。

この投稿、消してください。

編集 削除
mam  2025-02-10 00:56:41  No: 151772  IP: 192.*.*.*

外しているかもしれませんが、
古いDelphiのプロジェクトを開いたりすると時々キャッシュの関係でおかしくなる場合があるような気がします。

Delphi IDEの右上ペインにある「プロジェクト マネージャ」から「Project1.exe」(プロジェクト名)を右クリックして「クリーンアップ」を選択するのは如何でしょうか。
  ・コンパイルされたファイルの削除
      .exeファイルや中間生成ファイル(.dcuや.objなど)が削除されます。
  ・キャッシュのクリア
      コンパイルプロセス中に生成されるキャッシュファイルも削除される。
  ・デバッグ情報の削除
      デバッグ情報や一時ファイルも削除されることがあります。
が行われるので解消する可能性があるかもです。

編集 削除