设为首页
加入收藏
网站地图
动力论坛
今天:
维修首页 服务流程 服务项目 服务报价 网上学堂 购机指南 电脑优化 软件下载 技术交流
最新动态

热烈庆祝芯动力在@世界06年
@世界电脑城3周年庆典活动
国庆芯动力电脑连锁机构
国庆芯动力电脑连锁机构
芯动力数据恢复中心升级成
芯动力数据恢复中心升级成
More..

028-85353216 028-66742224
点击这里给我发消息 点击这里给我发消息
就业服务热线:

028-85350886

edu@cdwxw.net

三星COMBO时尚首选
一分钟教你辨别返修硬盘
硬件学堂之---谈超频的概念
内存品质的细微体现
AMD Athlon64处理器实际运
More...

手工彻底清除Backdoor.PWS
宽带时代的防毒措施
11.27预警:监控登陆窗口窃
光华反病毒资讯(11.27-12.
“USB间谍”变种a
更多...

用“替换法”“对照法”处
随机性死机故障分析与排除
全面深入了解电脑死机的原
“蓝屏”的原因及处理方法
黑屏的几个原因
电脑死机原因大全
更多...

当前位置:

首页>>电脑维修>>网络学堂>>操作系统>>Linux>>正文

用 DCOP 连接 KDE 应用程序


来源:  作者:  点击数:
 

在 KDE 桌面背后,暗藏着一系列强大的脚本技术,可以让高级用户自动地完成很多任务。在本文中,Martyn Honeyford 向我们介绍了这些技术,并解释了如何才能让它们发挥最大作用。

每 一个 KDE 桌面(从版本 2.0 起)都包含了一个鲜为人知但非常强大的部件,叫做“Desktop COmmunication Protocol”,或者简称为 DCOP。从开发者的角度来看,利用 DCOP 可以很方便地将强大的脚本功能添加到您的应用程序中。从用户的角度来看,利用 DCOP 可以容易地控制您的 KDE 应用程序,并可以将它们以有趣且强大的方式组合起来。

什么是 DCOP?


就 其本质而言,DCOP 是一个操作于套接字之上的轻量级进程间通信机制。DCOP 由一个服务器(即 dcopserver,它在 KDE 启动时会自动启动)和任意多个客户机(支持 DCOP 的应用程序)构成。DCOP 客户机之间可以互相发送消息(通过服务器)来请求信息,要求执行函数,等等。例如,Konqueror 可能会(确实是)向 KMail 发送 DCOP 消息,让它启动一个新窗口,新窗口的“To”域在点击“mailto& rdquo;链接时填好。

使用 DCOP


为帮助我们使用 DCOP,KDE 桌面附带了两个有用的工具:dcop 和 kdcop。

KDE DCOP 浏览器 -- kdcop


这是一个图形化的小工具,运行后可以列举出机器上正在运行的所有 DCOP 客户机,并以树状视图的形式显示出来。然后每个客户机都可以被展开,以显示出它支持哪些接口。

图 2. 输入 URL


3. 弹出您喜爱的站点

kdcop 是一个优秀的小工具,可以用来发现一个应用程序支持哪些接口,而第二个标准工具,简单地叫做“dcop”,可以更好地满足日常工作的需要。

KDE 控制台 DCOP 客户机 -- dcop
命令行工具“dcop”本质上与 kdcop 是相同的,但是它是在命令行中使用。因此,它对于编写脚本来说更为有用。

做一点说明,从现在起,小写的 dcop 表示命令行工具,大写的 DCOP 表示泛泛的 DCOP 体系结构。

让我们来举出一些例子,看看您可以用 dcop 工具来做哪些事情。

例 3. 加载 developerWorks
与前面一样,Konqueror 进程在 dcop 中显示为“konqueror-NNNNN”,其中 NNNNN 是 pid(进程 ID)。

幸好,dcop 支持通配符,因此下面的命令,

dcop konq*

将显示出所有以“konq”打头的活动的 dcop 客户机。

按 Unix 惯例,我们可以与 head 命令组合使用,只得到第一个结果,如下:

dcop konq* | head -1

这将只输出一个“konqueror-NNNNN”(或者如果没有 Konqueror 进程在运行则什么也不输出)。

最后我们希望将这个惟一的“konqueror-NNNNN”传递给 dcop,并调用适当的函数来打开一个 URL -- 在 bash 中我们只需要借助 ` 字符就可以做到这一点,如下:

dcop `dcop konq* | head -1` konqueror-mainwindow#1 openURL www.ibm.com/developerWorks

图 4. 甚至可以为调用您喜爱的 Web 站点的命令行起一个别名



如果您以前没有这样用过,那么告诉您,在 `字符间包括一些内容是表示先执行 `字符之间的命令,并用结果替换 ` 字符间的内容。因此命令

dcop `dcop konq* | head -1` konqueror-mainwindow#1 openURL www.ibm.com/developerWorks

将首先执行 `dcop konq* | head -1` 部分,我们得到的是

dcop konqueor-NNNNN konqueror-mainwindow#1 openURL www.ibm.com/developerWorks

接下来就可以正常执行,并给出我们期望的结果。

例 4. 使其全屏
在这个例子中,开始我们先启动一个新的 Konqueror 实例:

konqueror &

然后我们让它加载 developerWorks:

dcop konqueror-$! konqueror-mainwindow#1 openURL

本新闻共3页,当前在第1页  1  2  3  

  下一篇:基于Linux的路由器和防火墙配置

上一篇:Linux操作系统12则经典应用技巧

  相关内容
 
关于我们|版权申明|广告服务网站地图友情链接人才招聘