WinCVS - Python - TCL - PullRequest
       17

WinCVS - Python - TCL

1 голос
/ 11 марта 2011

У меня есть список файлов в текстовых файлах, и мне нужно проверить их в режиме редактирования, внести некоторые изменения (есть текстовые документы) и проверить их обратно через WinCVS.

Я знаю, что могу писать сценарии tcl или макросы, или сценарии python в оболочке wincvs, но у меня есть некоторые проблемы с ними.

Я установил TCL 8.5 и выбрал tcl DLL в Admin> Настройки, теперь доступен tcl, но всякий раз, когда я печатаю и выполняю tcl-скрипт, он говорит:

не могу найти канал с именем "stdout"

У вас есть идеи относительно этой ошибки?

Кроме того, я не могу видеть макросы администратора, это говорит, что Shell не доступна. Я установил последнюю версию python и выбрал соответствующую dll в настройках.

Может кто-нибудь дать мне подсказку для проверки списка файлов через wincvs?

заранее большое спасибо,

привет

1 Ответ

1 голос
/ 14 марта 2011

Проблема в том, что Tcl пытается встроить стандартные файловые дескрипторы в каналы, доступные по умолчанию (то есть stdin, stdout и stderr), но это не так, если они не открываются по умолчанию. Это имеет место в Windows, когда выполняется отключение (что происходит в приложениях с графическим интерфейсом на этой платформе). Когда вы работаете с полной оболочкой Tcl, такой как wish , это обходится, но вы встроены, так что это не сработает; код для исправления неполадок не запускается, потому что он является частью запуска оболочки, а не инициализации библиотеки (в конце концов, замена глобально-процессного ресурса, такого как файловые дескрипторы, немного недружелюбно для любой библиотеки, если приложение или пользователь не спросят об этом к!)

Самый простой обходной путь - не писать в stdout - обратите внимание, что это назначение по умолчанию для команды puts, поэтому вы должны быть осторожны - и стараться не записывать в stderr, так как это вероятно, с теми же ограничениями (что означает, что вы должны быть осторожны, как вы ловите ошибки, особенно при тестировании вашего скрипта).

...