Provided by: manpages-zh_1.6.3.3-2_all bug

NAME

       dde - 執行一個動態數據交換命令

總覽 SYNOPSIS

       package require dde 1.1

       dde servername ?topic?

       dde ?-async? command service topic ?data?
_________________________________________________________________

描述 DESCRIPTION

       當運行在  Microsoft  Windows 下的時候,這個命令允許一個應用來發送動態數據交換(Dynamic Data
       Exchange:DDE)命令。動態數據交換是一種機制,在這裏應用可以交換原始數據。每個           DDE
       事務都需要一個服務名(service       name)和一個主題(topic)服務名和主題均由應用來定義;Tcl
       使用的服務名是                     TclEval,而主題名是用dde                     servername
       給出的解釋器的名字。其他的應用有其自己的服務名主題。例如,Microsoft   Excel   的服務名是
       Exceldde  命令的唯一的選項是:

       -async 要求異步激發(invocation)。這隻對execute       子命令有效。正常的,dde       execute
              子命令等待直到命令完成,返回適當的出錯信息。當使用了                         -async
              選項,命令立刻返回,不能獲得出錯信息。

DDE 命令 COMMANDS

       下面的命令是完整的動態數據交換命令集的子集。

       dde servername ?topic?
              dde servername  用服務名 TclEval   和由 topic 指定的主題名來把解釋器註冊爲一個  DDE
              服務器。如果沒有給出                                                     topicdde
              servername返回當前的主題的名字,如果未被註冊爲一個服務則返回空串。

       dde execute service topic data
              dde  execute   接受  data    並把它發送到由   service    指示出的服務器並由   topic
              指示出主題。典型的,service                是一個應用的名字,而               topic
              是要在其上工作的一個文件。給予遠程應用的是  data   域(field)。典型的,應用把   data
              域作爲腳本對待,接着在應用中運行腳本。如果腳本沒有運行,命令返回一個錯誤。如果使用了
              -async標誌,命令立即返回而沒有錯誤。

       dde poke service topic item data
              dde poke  傳遞 data  到由 service指示的服務器並用 topicitem  加以指定。典型的,
              service                                                     是一個應用的名字。topic
              由應用指定,可以是給服務器的一個命令或一個要在其上工作的一個文件的名字。item
              也由應用指定,不常用,但必須總是非空。給予遠程應用的是 data  域( field)。

       dde request service topic item
              dde       request        典型的用於得到某種東西的值;如       Microsoft       Excel
              中的一個單元格(cell)的值或在    Microsoft    Word     中一個選擇的文本。    service
              典型的是一個應用的名字。
              topic典型的是文件的名字,item由用戶來指定。命令返回在應用中定義的 item的值。

       dde services service topic
              dde services  返回當前在機器上存在的服務-主題對的一個列表。如果 servicetopic
              都是空串({}),    則返回在系統上當前可獲得的所有的服務-主題對。如果  service  是空而
              topic      不是,則返回指定主題的所有服務。如果      service      不空而      topic
              空,則返回指定服務的所有主題。如果均不空,若當前存在這個服務-主題對則返回它,否則返回空。

       dde eval topic cmd ?arg arg ...?
              dde  eval    求值一個命令和它的參數,解釋器用  topic  指定。DDE   服務必須是TclEval
              服務。這個命令可以用於在 Windows 上替換 send。

DDE TCL

       一個 Tcl 解釋器總是有一個服務名 TclEval。每個不同的運行 Tcl 應用的解釋器必須給予一個用 dde
       servername指定的唯一的名字。每個解釋器只有使用                                         dde
       servername命令來設置名字,這個解釋器纔可作爲一個  DDE  主題來獲得。所以一個  dde  services
       TclEval {}  命令將返回一個服務-主題對的列表,這裏每個當前運行的解釋器都將是一個主題。

       當   Tcl   處理一個   dde   execute   命令時,用於執行的數據作爲一個腳本在   dde   execute
       命令的主題指明的解釋器中運行。

       當   Tcl   處理一個   dde   request命令時,它返回在   dde   命令中給出的變量的值,變量在由
       dde主題指名的解釋器的上下文中的。Tcl     爲內部使用而保留變量      $TCLEVAL       $EXECUTE
       $RESULT,對這些變量的dde request  命令將返回不可預測的(unpredictable)結果。

       打算運行一個Tcl   腳本的一個外部(external)應用應當使這個腳本在一個變量中存儲它的結果,運行
       dde execute  命令,接着運行 dde request 得到這個變量的值。

       當使用            DDE            時,注意要確保使用            update或者            vwait
       來刷新事件隊列。在使用wish時這是缺省的,但不包括調用了一個阻塞命令的情況(例如         exec
       而不填加       &        來在後臺運行進程)。如果由於某種原因而導致事件隊列沒被刷新,DDE
       命令將掛起(hang)直到事件隊列被刷新。這可能產生死鎖的情況。

參見 SEE ALSO

       tk(n), winfo(n), send(n)

關鍵字 KEYWORDS

       application, dde, name, remote execution

[中文版維護人]

       寒蟬退士

[中文版最新更新]

       2001/06/18

《中國 Linux 論壇 man 手冊頁翻譯計劃》:

       http://cmpp.linuxforum.net

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh