本文整理汇总了C++中QFileInfo::isBundle方法的典型用法代码示例。如果您正苦于以下问题:C++ QFileInfo::isBundle方法的具体用法?C++ QFileInfo::isBundle怎么用?C++ QFileInfo::isBundle使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QFileInfo
的用法示例。
在下文中一共展示了QFileInfo::isBundle方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: isValid
bool LaunchPage::isValid()
{
if (ui->progEdit->text().isEmpty()) {
return false;
}
const QFileInfo fi(ui->progEdit->text());
#ifdef Q_OS_MAC
if (fi.isBundle() && (fi.suffix() == "app")) {
return true;
}
#endif
return fi.exists() && fi.isFile() && fi.isExecutable();
}
示例2: main
int main(int argc, char *argv[])
{
int result;
QApplication a( argc, argv );
qDebug() << "applicationDirPath: " << QCoreApplication::applicationDirPath();
#ifdef Q_OS_MAC
CFURLRef appUrlRef = CFBundleCopyBundleURL(CFBundleGetMainBundle());
CFStringRef macPath = CFURLCopyFileSystemPath(appUrlRef, kCFURLPOSIXPathStyle);
const char *bndlPathPtr = CFStringGetCStringPtr(macPath, kCFStringEncodingUTF8);
QDir workDir;
if (bndlPathPtr) {
qDebug() << "Using mac bundle path for cwd: " << bndlPathPtr;
workDir = QDir(bndlPathPtr); workDir.cdUp();
} else {
// check if we are inside bundle:
QDir testDir = QDir(QCoreApplication::applicationDirPath()); testDir.cdUp(); testDir.cdUp();
QFileInfo appDir = QFileInfo(testDir.absolutePath());
if (appDir.isBundle()) {
qDebug() << "Starting from inside bundle: " << testDir.absolutePath();
workDir = QDir(testDir.absolutePath()); workDir.cdUp();
}
QDir::setCurrent(workDir.absolutePath());
}
#endif
qDebug() << "Working directory: " << QDir::currentPath();
if(!RocketSystem::getInstance().initialize())
{
return -1;
}
Rockete w;
w.show();
result = a.exec();
RocketSystem::getInstance().finalize();
return result;
}