Fea*_*eep 9 c++ scripting qt cross-platform launch
首先,我发现了几个特定于java的问题和答案.我正在寻找更多"本机",但跨平台的解决方案,使用C,C++,某种shell脚本,或者在我的情况下,Qt.
所以问题是,是否存在标准的,跨平台的,以编程方式打开某些文件类型的关联应用程序的方法.或者至少要找出是否有关联的应用程序,并能够找到并启动它们?
跨平台我指的是Windows,OSX和linux(gnome/kde).该用例是一个数据库,其中存储的文件为blob,将在三个不同的目标上读取.
Jör*_*tag 11
我不知道任何跨平台的方式.
在Windows中,有一个start命令,它将启动相关的默认应用程序.(例如,start foo.doc将启动默认的Word文档编辑器,start http://StackOverflow.Com/默认的Web浏览器和start mailto:mail@example.com默认的邮件应用程序.)
在OS X中有open命令,它执行相同的操作.
Linux只是一个操作系统内核.操作系统内核对"文件类型"或"MIME类型"或"关联应用程序"或类似内容一无所知.因此,对于Linux来说,这样的事情根本就不存在.
Freedesktop Group有一个命令规范xdg-open,适用于所有符合Freedesktop标准的图形桌面(无论是Linux,FreeBSD,NetBSD,OpenBSD,DragonflyBSD,OpenSolaris还是其他).但是,显然不能保证在非Freedesktop系统上工作,并且肯定不能保证在非图形系统上工作.
在所有这三种情况下,这是一个命令行应用程序,而不是C或C++ API,但您显然可以通过它来调用它system.
| 归档时间: |
|
| 查看次数: |
2442 次 |
| 最近记录: |