NOM
send - Execute une commande dans une application différente
SYNTAXE
send ?options? app cmd ?arg arg ...?
DESCRIPTION
-async
-displayof pathName
- -
NOMS DES APPLICATIONS
DESACTIVATION DES ENVOIS
SECURITE
MOTS-CLES

NOM

send - Execute une commande dans une application différente

SYNTAXE

send ?options? app cmd ?arg arg ...?

DESCRIPTION

Cette commande prépare cmd (et args) a être exécutée dans l'application nommée app. Elle retourne le resultat ou l'erreur de cette execution. App peut être le nom de toute application dont la fenêtre principale est à l'écran contenant la fenêtre principale de l'appelant; elle n'a pas besoin d'être à l'intérieur du même process. Si aucun arguments arg ne sont présents, alors la commande a exécuter est contenue entièrement à l'intérieur de l'argument cmd. Si un ou plusieurs args sont présents, ils sont concaténés pour former la commande a exécuter, comme pour la commande eval.

Si les arguments initiaux de la commande commencent par un ``-'' ils sont traité comme des options. Les options suivantes sont actuellement définies:

-async
Demande un appel asynchrone. Dans ce cas la commande send sera complétée immédiatement sans attendre que cmd soit terminée dans l'application cible; aucun resultat ne sera disponible et les erreurs dans la commande envoyée seront ignorées. Si l'application cible est dans le même process que l'application appelante alors l'option -async est ignorée.

-displayof pathName
Spécifie que la fenêtre principale de l'application appelante est à l'écran de la fenêtre indiquée par pathName, à la place de l'écran contenant la fenêtre principale de l'application.

- -
N'a d'autre usage que de terminer la liste des options. Cette option est seulement requise si app peut contenir un caractère ``-'' en tête.

NOMS DES APPLICATIONS

Le nom d'une application est initialisé à partir du nom du programme ou du script qui crée l'application. Vous pouvez lire et changer le nom d'une application avec la commande tk appname.

DESACTIVATION DES ENVOIS

Si la commande send est enlevée d'une application (ex. avec la commande rename send {}) alors l'application ne réagira plus aux appels de send entrants, ni ne sera capable d'emmettre des demandes. La communication peut être réactivée par l'appel de la commandetk appname.

SECURITE

La commande send est potentiellement une serieuse faille de sécrité. Sous Unix, toute application pouvant se connecter à votre serveur X peut envoyer des scripts à vos applications. Ces scripts pourraient utiliser Tcl pour lire et écrire vos fichiers et appeler des subprocesses sous votre nom. Le contrôle d'accès basé sur les noms d'hôtes assuré par le fichier xhost est particulièrement peu sūr, car il permet à tous les comptes activés sur une machine particulière de se connecter à votre serveur, et s'il est désactivé au il permet au monde entier de se connecter à votre serveur. De manière à fournir une sécurité minimum, Tk vérifie le contrôle d'accès utilisé par le serveur et rejette les sends entrants à moins que(a) un contrôle d'accès xhost-style soit activé (c.a.d. seulement certaines machines peuvent se connecter) et (b) la liste des machines autorisées soit vide. Ceci signifie que les applications ne peuvent pas se connecter à votre serveur à moins qu'ils utilisnent une autre forme d'autorisation comme celle fournie par xauth. Sous Windows, send est actuellement désactivée. Ses fonctionnalités sont fournies par la commande dde.

MOTS-CLES

application, dde, NOM, remote execution, security, send
Copyright © 1990-1994 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.
Copyright © 1995-1997 Roger E. Critchlow Jr.

Copyright © 2003 - Le Portail Tcl/Tk Francophone.