WEB开发网
开发学院操作系统Linux/Unix 使用 Ttyutils 截获 UNIX/Linux 终端 阅读

使用 Ttyutils 截获 UNIX/Linux 终端

 2008-09-23 08:23:44 来源:WEB开发网   
核心提示: RPC 服务 远程过程调用 (remote process call)RPC 服务是 ttyexec 为进程间通讯提供的接口,注意它和 SUN RPC 没有任何的关系,使用 Ttyutils 截获 UNIX/Linux 终端(7),并且不能跨网络使用,当事件触发时,包括从源代码编写到编译,

RPC 服务

远程过程调用 (remote process call)RPC 服务是 ttyexec 为进程间通讯提供的接口,注意它和 SUN RPC 没有任何的关系,并且不能跨网络使用。

当事件触发时,事件动作程序被启用,事件动作程序是一个标准的应用程序,它可以做任何它喜欢的事情,但是有时候,它需要和 ttyexec 交互,例如它可能需要获取当前终端屏幕的内容, ttyexec 为这样的情况提供了准备,称为 RPC 服务。

Ttyexec 提供了下面的服务 :

snap: 获取当前终端屏幕的快照;

feed: 发送数据作为实终端的标准输入;

suspend/resume_stdio: 悬挂 / 恢复实终端标准输入;

suspend/resume_stdout: 悬挂 / 恢复实终端标准输出;

insert/remove_event: 添加 / 删除事件表中的事件;

下面用一个例子描述如何编写一个 C 程序来使用上面提供的 feed 服务,包括从源代码编写到编译,连接完整的步骤。

#include <ttyutils.h>
int
main (int argc, char *argv[])
{
TRpcTarget target;
if (!t_init ())
return 1;
target.rt_timeout = 3;
target.rt_type = RPC_TARGET_PTS;
target.rt_pts = "/dev/pts/3";
if (!t_rpc_call_set_target (&target))
{
t_println ("set rpc target failed.");
return 1;
}
if (!t_rpc_call_feed ("hello", 5))
{
g_warning (_("rpc call failed."));
return 1;
}
t_uninit ();
return 0;
}

将上面的代码保存到文件 example.c,然后到用下面的命令编译它 :

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:使用 Ttyutils 截获

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接