errorトラップについて


さい  2004-12-20 13:44:45  No: 118391  IP: [192.*.*.*]

いつもお世話になっております
win2000,VB6.0SP6で
プロジェクト上では、
On Error Resume Next のような  
エラートラップが効くのですが
exeファイルにすると
エラートラップが働かなくなります
何か変な設定してるのでしょうか?
教えて下さい

編集 削除
特攻隊長まるるう  2004-12-21 09:18:33  No: 118392  IP: [192.*.*.*]

これだけの情報では調べようが無いです。
例えばエラートラップより前で落ちてるとか…

エラートラップの処理までは確実に実行されて
ますか?処理の途中に、実行した処理のログを
テキストファイルに吐き出すような処理を
挿入して確認しましたか?。

その場合、エラートラップの処理の中で処理が
止まったり落ちたりしてますか?。

そこまで調べられてるならエラートラップのコードに
問題がある可能性が高いです。サンプルコードを
載せてどういう処理を行ってるか説明して下さい。

編集 削除
ねろ  2004-12-21 10:10:19  No: 118393  IP: [192.*.*.*]

コンパイルオプションでPコードコンパイルをすると、どうなりますか。

>エラートラップが働かなくなります
その結果どのようになりますか?
トラップをくぐりぬける所でAPIなど使っているでしょうか。

編集 削除
さい  2004-12-21 14:41:54  No: 118394  IP: [192.*.*.*]

すみません具体的ではないのですが
例えば、
Dim aaa As String
On Error Resume Next 
{処理1}
{処理2}
{処理3}
  for i=1 to cint(aaa)  ・・・・・①
 {処理4}
  next
{処理5}
    :
    :
On Error goto 0
 
で  aaa=""の時
プロジェクト(エディタ)上で実行すると
①を飛ばしてくれるのに

コンパイルをしてから
exeファイルを実行すると
エラー(型が違います)で引っかかることがあります
なぜですか?

編集 削除
いな  2004-12-21 14:55:55  No: 118395  IP: [192.*.*.*]

まさか・・・。と思い自分の環境で試してみましたが、
落ちませんでした?

Private Sub Form_Load()
Dim aaa As String
On Error Resume Next
  
  For i = 1 To CInt(aaa)
    MsgBox "For文"
  Next
MsgBox Err.Description
On Error GoTo 0
MsgBox Err.Description
End Sub

もう少し処理の中身を書いてもらえるとわかるかも

編集 削除