• 5165阅读
  • 3回复

如何让Qt应用程序只有一个实例 [复制链接]

上一主题 下一主题
离线numen
 

只看楼主 倒序阅读 楼主  发表于: 2010-07-25
在实际应用中,我们经常需要让应用程序只有一个实例,再打开新的文档或者页面时,只是替换现在的窗口或者新打开一个标签,而不是重新启动一次应用程序。Qt中是否可以做到这样呢,答案是肯定的,因为Qt本身可以直接调用系统API,肯定可以做到,但是我们希望找到一个跨平台的通用的解决方案。
      这就要用到Qt的QLocalSocket,QLocalServer类了,这两个类从接口上看和网络通信socket没有区别,但是它并不是真正的网络API,只是模仿了而已。这两个类在Unix/Linux系统上采用Unix域socket实现,而在Windows上则采用有名管道(named pipe)来实现。
更详细内容见:
http://www.cnblogs.com/baizx/archive/2010/07/25/1784633.html
欢迎访问我的blog:
http://www.cnblogs.com/baizx
离线dbzhang800

只看该作者 1楼 发表于: 2010-07-25
这个东东,Qt solutions 中有现成的库可以用,应该不需要自己再实现了
离线numen

只看该作者 2楼 发表于: 2010-07-26
qt solutions是没有的,我对qt库里的代码还是比较熟悉的,
欢迎访问我的blog:
http://www.cnblogs.com/baizx
离线dbzhang800

只看该作者 3楼 发表于: 2010-07-26
引用第2楼numen于2010-07-26 10:06发表的  :
qt solutions是没有的,我对qt库里的代码还是比较熟悉的,

http://qt.nokia.com/products/appdev/add-on-products/catalog/4/Utilities/qtsingleapplication/
快速回复
限100 字节
 
上一个 下一个