• 5539阅读
  • 5回复

QCop协议遇到问题,求教 [复制链接]

上一主题 下一主题
离线snakesun
 
只看楼主 倒序阅读 楼主  发表于: 2006-07-28
我打算用QCop来实现进程间通信

创建2个窗口 A窗口发,B窗口接收
如果再同一终端先运行A窗口,再由A窗口来运行B窗口的话就能通信(相当于在A里定义个B的类对象再显示出来),就能互相通信

A,B两窗口在不同终端启动就不行了。。。

不知道原因~~请斑竹+高手+老鸟指导一下

大致代码
A窗口中

QCopEnvelope e("QPE/Do", "Message1(QString)");
e << param;


B窗口中

QCopChannel *doChannel = new QCopChannel("QPE/Do", this);

connect(doChannel, SIGNAL(received(const QCString &, const QByteArray &)), this, SLOT(get(const QCString &, const QByteArray &)));

void classtwo::get(const QCString &msg, const QByteArray &args)
{
QDataStream stream(args, IO_ReadOnly);
QString text;
stream >> text;
}
[ 此贴被XChinux在2006-07-28 19:41重新编辑 ]
离线snakesun
只看该作者 1楼 发表于: 2006-07-28
好象就只是能线程间通信,不能进程间通信~~
但是原理是一样的。。。。应该是都可行的    
不明白
离线snakesun
只看该作者 2楼 发表于: 2006-07-29
高手指导一下
离线snakesun
只看该作者 3楼 发表于: 2006-07-31
我想了一下,2个终端之间内存空间等资源都不同,根据QCop就不能通信
离线shiroki

只看该作者 4楼 发表于: 2006-07-31
不是吧。qcop是为进程间通讯用的啊。。。
--
shiro is White
ki is tree
http://www.cuteqt.com
论坛 http://www.cuteqt.com/bbs
博客 http://www.cuteqt.com/blog
博客镜像: http://sites.cuteqt.com/cuteqt
Linux/Qt/嵌入式讨论群 http://qun.qq.com/air/5699823
离线go2go3

只看该作者 5楼 发表于: 2006-07-31
应该只能一个终端里开几个进程才能进程间通信
开几个终端之间要通信可以用Linux共享内存的方法。。用命名管道方便~~

不过好象QCop传参数只能传字符串,整型之类的,我试过传结构体好象不行~~
有人知道能传结构体吗?
快速回复
限100 字节
 
上一个 下一个