2011-03-11 61 views
1

我已经得到了txt文件中的文件列表,并且需要在编辑模式下检查它们,并进行一些更改(有文档文件),并通过WinCVS将它们重新检入。WinCVS - Python - TCL

我知道我可以在wincvs shell中编写tcl脚本或宏或python脚本,但是我遇到了一些问题。

我已经安装了TCL 8.5和管理>首选项中选择TCL DLL,TCL现在可用,但每当我键入并执行Tcl脚本,它说

无法找到名为通道“标准输出”

你对这个错误有什么想法吗?

此外,我看不到管理宏,它说壳牌不可用。我已经安装了最新版本的python,并在首选项中选择相关的dll。

任何人都可以通过wincvs给我一个检查文件列表的提示吗?

许多在此先感谢,

问候

+0

你有8.5的确切版本?即使不包括beta,仍然包含10个点的发布...... – 2011-03-13 01:58:55

回答

1

的问题是TCL的试图建立标准文件描述符到可供利用默认信道(即stdinstdoutstderr),但这不顺心当他们没有默认打开。当运行断开连接时(在该平台上的GUI应用程序内发生的情况),Windows就是这种情况。当你运行一个完整的Tcl shell,如,希望,这是可以解决的,但是你已经嵌入了,所以这不会起作用。解决问题的代码不会运行,因为它是shell启动的一部分,而不是库初始化(毕竟,替换像文件描述符这样的流程全局资源对于没有应用程序或用户询问的任何库来说都有点不友好!到)

最简单的解决方法是不写stdout - 注意它的puts命令的默认目标,所以你必须要小心 - 并注意不要写stderr要么,因为这下也许相同的限制(这意味着您必须小心如何捕捉错误,特别是在测试脚本时)。