| 00158 99/01/14 04:49 | RE:00157 回線異常時の処理について |
| 投稿者 : かずや | コメントを投稿する |
こんにちわ >もしも通信中にエラーが起ったときに、リダイアルし、スクリプトの最初から >再実行させるにはどのコマンドを利用すればいいのでしょうか? connect文を使います connect文は、アクセスが成功すると、そこで処理は終了します 失敗すると、そのまま処理は次の行に進みます アクセスしたあとも、処理を続行するばあいは 「自動起動するスクリプト」を使います >何から何まで聞いてすみません。 いえいえ、σ(^-^)もよい勉強になります |
| 00159 99/01/14 13:19 | RE:00157 回線異常時の処理について |
| 投稿者 : 秀まるお | コメントを投稿する |
追加レスしてしまいます。 > もしも通信中にエラーが起ったときに、リダイアルし errorlog onとやった場合にエラーが発生しているかどうかの判定は、errorlog. txtというファイルが存在しているかどうかで判断すればいいです。 「errorlog on」とやっておくと、秀Term用のディレクトリにerrorlog.txtという ファイルが作成されるので、エラーが起きたかどうかはそのファイルが存在している かどうかで確認することができます。 スクリプトの先頭にて delfile "errorlog.txt" @@error = 0 afterhangup HangupProc とやっておいて、あと、スクリプトの途中の適当な所にて、 if( existfile( "errorlog.txt" ) ) @@error = 1 hangup endif のような処理を実行するようにしておいて、 HangupProc: if( @@error != 0 ) delfile "errorlog.txt"; ;エラーの時のリダイヤルの処理とか... endif ってな風にすればいいと思います。 |
| 00160 99/01/14 16:44 | RE:00159 回線異常時の処理について |
| 投稿者 : woods | コメントを投稿する |
みなさんありがとうございました。 なんとかかんとか、できました。 > errorlog onとやった場合にエラーが発生しているかどうかの判定は、errorlog. >txtというファイルが存在しているかどうかで判断すればいいです。 > 「errorlog on」とやっておくと、秀Term用のディレクトリにerrorlog.txtという >ファイルが作成されるので、エラーが起きたかどうかはそのファイルが存在している >かどうかで確認することができます。 モデムを内臓している装置に電話をかけて、ロギングを停止するコマンドを送って、 その後、ログをダウンロードして、再びロギングを開始するコマンドを送り、 回線を切断するようなことをしていました。 ところがまれに、ダウンロード中にデータ転送がストップする事があり 回線が切れてしまうことがあったのです。 それで今回、回線が切れた場合のリダイアルをさせようとしていたのです。 ところで、afterhangupコマンドは入れ子になっていてもよいのでしょうか。 afterhangup AbortProc AbortProc: if( existfile( "errorlog.txt" ) ) connect ”ABC” endif afterhangup AfterClose hangup AfterClose: closehideterm このように、異常終了にて回線切断された場合、ABCに接続しに行きます。 (ちなみに、同じABCで使用するスクリプトに上記内容を記述しています) 異常終了しなかった場合、AbortProc:は実行されずに、 afterhangup以降を処理しています。希望する動きになっているのですが、 もんだいないのですよね。 |
| 新規に投稿する |