2013-07-29 77 views
0

有在库线,我不能冒了出来:有没有办法判断默认流是否打开?

put oResults format "x(80)" skip. 

我正在调用不具有一个默认的输出所以这行的错误出库的程序。

我知道我可以在我的程序某处发送输出,但我想修复它,所以你不必输出。寻求功能可能吗?

编辑:10.2b

我只在unix中得到一个错误。

在UNIX环境中,该行:

put oResults format "x(80)" skip. 

错误的。

,但如果你把一个:

if seek(output) <> ? then 
    put oResults format "x(80)" skip. 

它没有错误。


在UNIX环境行

put oResults format "x(80)" skip. 

错误的。

,但如果你把一个:

if seek(output) <> ? then 
    put oResults format "x(80)" skip. 

它没有错误。

+0

什么版本的Progress? –

+0

你有什么错误?我只是试着用一个简单的测试程序和Linux上的10.2B来测试它。如果默认输出未指定,或者甚至明确关闭,则不会出现错误。 –

+0

你看到的错误文本是什么? “尝试写入未打开的流” –

回答

1

您正在批处理模式下运行。您应该总是在批处理模式下运行时在OS级别重定向您的输出。类似这样的:

bpro -p test.p > errors.out 2>&1 

不重定向输出几乎总是会导致您看到的错误。

如果您在脚本中嵌入bpro,mbpro或_progres -b或其他任何命令,需要显示该输出或以其他方式工作,则通常在输出文件上使用“cat”或“tail -f” 。

相关问题