2015-10-19 13:27:31 +03:00
|
|
|
|
<title>send</title>
|
|
|
|
|
<CENTER><h1>send</h1></CENTE>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<DIR><FONT face=Arial><FONT size=+1>Выполнить команду в другом
|
|
|
|
|
приложении.</FONT></FONT> <BR>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<LI><FONT face=Arial><FONT size=+1><A
|
2018-02-05 17:22:04 +03:00
|
|
|
|
href=tk.html#send СИНТАКСИС>Синтаксис</A></FONT></FONT>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<LI><FONT face=Arial><FONT size=+1><A
|
2018-02-05 17:22:04 +03:00
|
|
|
|
href=tk.html#send ОПИСАНИЕ>Описание</A></FONT></FONT>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
|
|
|
|
<LI><FONT face=Arial><FONT size=+1><A
|
2018-02-05 17:22:04 +03:00
|
|
|
|
href=tk.html#send ИМЕНА ПРИЛОЖЕНИЙ>Имена
|
|
|
|
|
приложений</A></FONT></FONT>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<LI><FONT face=Arial><FONT size=+1><A
|
2018-02-05 17:22:04 +03:00
|
|
|
|
href=tk.html#send БЛОКИРОВКА ПОСЫЛАЕМЫХ КОМАНД>Блокировка
|
|
|
|
|
посылаемых команд</A></FONT></FONT>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<LI><FONT face=Arial><FONT size=+1><A
|
2018-02-05 17:22:04 +03:00
|
|
|
|
href=tk.html#send БЕЗОПАСНОСТЬ>Безопасность</A></FONT></FONT>
|
|
|
|
|
</LI></DIR><A name=send СИНТАКСИС></A><B><FONT face=Arial><FONT
|
|
|
|
|
size=+1>СИНТАКСИС</FONT></FONT></B>
|
|
|
|
|
<DIR><FONT face=Arial><FONT size=+1><B>send</B> ?<I>параметры</I>? <I>прил
|
|
|
|
|
кмд</I> ?<I>арг арг ...</I>?</FONT></FONT></DIR><A
|
|
|
|
|
name=send ОПИСАНИЕ></A><B><FONT face=Arial><FONT
|
|
|
|
|
size=+1>ОПИСАНИЕ</FONT></FONT></B>
|
|
|
|
|
<DIR><FONT size=+1>Обеспечивает выполнение команды, заданной параметром
|
|
|
|
|
<I>кмд</I> (с аргументами, заданными параметрами <I>арг</I>), в приложении
|
|
|
|
|
с именем <I>прил</I>. Возвращает результат выполненной команды или ошибку.
|
|
|
|
|
Аргумент <I>прил</I> может задавать имя любого из приложений, главное окно
|
|
|
|
|
которого расположено на том же дисплее, что и главное окно запрашивающего
|
|
|
|
|
приложения; запрошенное приложение не обязано управляться тем же
|
|
|
|
|
процессом. Если аргументы отсутствуют, то выполняемая команда полностью
|
|
|
|
|
определяется аргументом <I>кмд</I>. Если присутсвует один или несколько
|
|
|
|
|
аргументов, то они конкатенируются с <I>кмд</I> в точности так же, как и в
|
|
|
|
|
команде <B><FONT face=Arial><A
|
|
|
|
|
href=eval>eval</A></FONT>.</B></FONT>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<P><FONT face=Arial><FONT size=+1>Если первые аргументы команды начинаются
|
|
|
|
|
с дефиса -, то они интерепретируются как параметры. В настоящее время
|
|
|
|
|
допустимы следующие параметры:</FONT></FONT>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<P><B><FONT face=Arial><FONT size=+1>-async</FONT></FONT></B>
|
|
|
|
|
<DIR>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<DIR><FONT face=Arial><FONT size=+1>Запрашивает асинхронный вызов. В этом
|
|
|
|
|
случае выполнение команды <B>send</B> завершается немедленно, не дожидаясь
|
|
|
|
|
завершения выполнения команды, заданной аргументом <I>кмд</I>, в
|
|
|
|
|
приложении-адресате; результат выполнения посланной команды или
|
|
|
|
|
возникающие при выполнении ошибки игнорируются. Если адресат управляется
|
|
|
|
|
тем же процессом, что и посылающее приложение, то параметр <B>-async</B>
|
|
|
|
|
игнорируется.</FONT></FONT></DIR></DIR><B><FONT size=+1><FONT
|
2015-10-19 13:27:31 +03:00
|
|
|
|
face=Arial>-displayof</FONT> </FONT></B><I><FONT face=Arial><FONT
|
2018-02-05 17:22:04 +03:00
|
|
|
|
size=+1>имяПути</FONT></FONT></I>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<DIR>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<DIR><I><FONT size=+1>Указывает на то, что главное окно
|
|
|
|
|
приложения-адресата должно быть на том же дисплее, что и окно, заданное
|
|
|
|
|
аргументом имяПути, а не на дисплее посылающего
|
|
|
|
|
приложения.</FONT></I></DIR></DIR><B><FONT face=Arial><FONT
|
2015-10-19 13:27:31 +03:00
|
|
|
|
size=+1>--</FONT></FONT></B>
|
|
|
|
|
<DIR>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
<DIR><FONT face=Arial><FONT size=+1>Единственная задача этого параметра
|
|
|
|
|
завершить список параметров. Он используется только если значение
|
|
|
|
|
аргумента <I>прил</I> может начинаться с дефиса
|
|
|
|
|
-.</FONT></FONT></DIR></DIR></DIR><A
|
|
|
|
|
name=send ИМЕНА ПРИЛОЖЕНИЙ></A><B><FONT face=Arial><FONT size=+1>ИМЕНА
|
|
|
|
|
ПРИЛОЖЕНИЙ</FONT></FONT></B>
|
|
|
|
|
<DIR><FONT size=+1><FONT face=Arial>Первоначально имя приложения
|
|
|
|
|
определяется именем программы или скрипта, его создающего. Имя приложения
|
|
|
|
|
можно узнать и изменить с помощью команды <B>appname</B></FONT><B>
|
2015-10-19 13:27:31 +03:00
|
|
|
|
Tk.</B></FONT></DIR><A
|
2018-02-05 17:22:04 +03:00
|
|
|
|
name=send БЛОКИРОВКА ПОСЫЛАЕМЫХ КОМАНД></A><B><FONT face=Arial><FONT
|
|
|
|
|
size=+1>БЛОКИРОВКА ПОСЫЛАЕМЫХ КОМАНД</FONT></FONT></B>
|
|
|
|
|
<DIR><FONT size=+1>Если отменить в приложении команду<B> <FONT
|
|
|
|
|
face=Arial>send</FONT></B><FONT face=Arial> (например, выполнив команду
|
|
|
|
|
<B>rename send {}</B>), то приложение перестанет реагировать на
|
|
|
|
|
поступающие запросы <B>send</B> и само не сможет посылать запросы.
|
|
|
|
|
Восстановить взаимодействие приложений можно, выполнив команду
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<B>appname</B></FONT><B> Tk.</B></FONT></DIR><A
|
2018-02-05 17:22:04 +03:00
|
|
|
|
name=send БЕЗОПАСНОСТЬ></A><B><FONT face=Arial><FONT
|
|
|
|
|
size=+1>БЕЗОПАСНОСТЬ</FONT></FONT></B>
|
|
|
|
|
<DIR><FONT size=+1>Команда<B> <FONT face=Arial>send</FONT></B><FONT
|
|
|
|
|
face=Arial> является потенциальным источником серьезных нарушений защиты,
|
|
|
|
|
так как любое приложение, способное соединиться с Вашим X сервером, может
|
|
|
|
|
посылать скрипты в Ваше приложение. С помощью Tcl присланные скрипты могут
|
|
|
|
|
читать Ваши файлы и выполнять запись в них и запускать подпроцессы под
|
|
|
|
|
Вашим именем. Особенно уязвимо управление доступом вида <B>xhost</B>, так
|
|
|
|
|
как всякий пользователь, заведенный на головном компьютере, может
|
|
|
|
|
связаться с Вашим сервером; если же это управление доступом отключить, то
|
|
|
|
|
связь становится возможной вообще для любого пользователя, где бы он ни
|
|
|
|
|
находился. Чтобы обеспечить хотя бы минимальную защиту, Tk проверяет
|
|
|
|
|
систему управления доступом на сервере и отвергает все присланные команды,
|
|
|
|
|
если либо (а) xhost-система управления доступом отключена (так что лишь
|
|
|
|
|
некоторые головные компьютеры могут устанавливать связь); либо (б) список
|
|
|
|
|
головных компьютеров, которым такая связь разрешена, пуст. В результате
|
|
|
|
|
никакое приложение не сможет связаться с Вашим сервером, если у него не
|
|
|
|
|
будет дополнительных прав (например, предоставленных
|
2015-10-19 13:27:31 +03:00
|
|
|
|
<B>xauth</B></FONT><B>).</B></FONT></DIR>
|
2018-02-05 17:22:04 +03:00
|
|
|
|
|