获取当前项目路径

问题描述:

如何获取在qtCreator中打开的当前活动项目的绝对路径?无论如何,是否有办法做到这一点?获取当前项目路径

+1

你想去哪里得到这些信息?你在开发一个QtCreator插件吗? –

+0

#FrankOsterfeld是的,我喜欢。 – smallB

+0

对于Qtcreator中的接口,您必须阅读qtcreator源代码并查看IRC频道和邮件列表的http://qt-project.org/wiki/Category:Tools::QtCreator#a16b6d01b077c1e317a63fc55fb81ad2。没有公共文档或有关Qt创建者开发的太多外部知识可以在SO等上找到。 –

Qt只支持QDir::currentPath这将指向可执行文件的位置,据我所知它没有钩子可以从Qt Creator获取信息。如果您的可执行文件正在构建在同一个目录中,则该项目将在currentPath()中生效,并将返回该目录。

编辑:我会离开我是一个白痴的地方。 Qt Creator有一组API文档,指向Core::FileManager::,另一个用于Utils。这里有许多函数用于返回项目目录,当前打开的文件是什么,它在哪里,等等。就快速扫描而言,没有明确的“目前的绝对路径是什么”,但可能有一种方法可以查询当前打开的内容。该API文档是在这里:http://doc.qt.digia.com/qtcreator-extending/qtcreator-api.html

+0

嗨,我没有downvote你,谢谢你的回答。 – smallB

对于最新QtCreator 3.4.0 API,你可以使用这个:

#include <projectexplorer/projecttree.h> 
#include <projectexplorer/project.h> 
#include <utils/fileutils.h> 

ProjectExplorer::ProjectTree::currentProject()->projectDirectory().toString(); 
ProjectExplorer::ProjectTree::currentProject()->projectFilePath().toString();