実行時サブルーチン:重大なエラーに対するプロンプト・モードを設定します。基本設定は,システム・プロンプトを生成します。
モジュール:USE DFLIB
形式
CALL SETERRORMODEQQ (pmode)
pmode
(入力) LOGICAL(4)。重大なエラーが発生した時にプロンプトを表示するかどうかを設定するフラグ
特定の I/O エラーは,エラー・プロンプトをシステムに表示させます。たとえば,ドライブのドアを開くディスク・ドライブへの書き込みは,「Abort」, 「Retry」, 「Ignore」メッセージを生成します。システムを起動する時,システムのエラー・プロンプトが基本設定 (pmode = .TRUE.) では有効になっています。pmode を ERR$HARDPROMPT (\DF98\INCLUDE サブディレクトリの DFLIB.F90 に定義されています) に設定して SETERRORMODEQQ を呼び出すことによって,システムのエラー・プロンプトを有効にすることができます。
プロンプト・モードがオフになっている場合,基本設定ではシステム・プロンプトを発生させる重大なエラーがシステム・プロンプトを発生させません。OPEN,READ,および WRITE のような I/O 文でのエラーは,プロンプトで中断するよりも直ちに失敗します。これにより,I/O 文での失敗を (ERR=errlabel (ここで,errlabel は実行可能文) と設定することで) 横取りすることができ,システム・プロンプトが要求するものと異なった動作を取ることができます。たとえば,一時ファイルを開いたり,より詳細なエラー・メッセージを表示したり,プログラムを終了したりすることができます。pmode を .FALSE. または ERR$HARDFAIL (\DF98\INCLUDE サブディレクトリの DFLIB.F90 に定義されています) に設定することでプロンプト・モードをオフにすることができます。
SETERRORMODEQQ は,システム・プロンプトを生成するエラーのみに影響を及ぼすことに注意してください。存在しないファイルに書き込みを行ったり,存在しないファイルを STATUS='OLD' で開こうとしたりした時に発生するその他の I/O エラーには影響しません。
互換性
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
例
! PROGRAM 1 ! DRIVE B のドアを開く OPEN (10, FILE = 'B:\NOFILE.DAT', ERR = 100) ! ここでは,システム・プロンプトを生成し,継続する前に ! ユーザーがプロンプトに応答するのを待ちます。 100 WRITE(*,*) ' Continuing' END ! PROGRAM 2 ! DRIVE B のドアを開く USE DFLIB CALL SETERRORMODEQQ(.FALSE.) OPEN (10, FILE = 'B:\NOFILE.DAT', ERR = 100) ! 文番号 100 の文をシステム・プロンプトなしで実行するようにします。 100 WRITE(*,*) ' Drive B: not available, opening alternative drive.' OPEN (10, FILE = 'C:\NOFILE.DAT') END