Как проверить есть ли у системы возможность открыть файл?

142
16 февраля 2018, 19:24

есть абсолютное имя файла QString filePath. Надо из программы вызвать открытие этого файла стандартной для системы утилитой. Делаю это так:

QDesktopServices::openUrl(QUrl::fromLocalFile(filePath))

И, если программа для открытия такого файла есть, то все хорошо. Но если ее нет, то ничего абсолютно не происходит (проверял только OS Ubuntu 16, но нужно кроссплотформенное решение), только в логи выводит

gvfs-open: filePath: ошибка открытия адреса: Нет зарегистрированного приложения для обработки данного файла

bool возвращаемый openUrl пропускает это спокойно, похоже что он проверяет только валидность url'a.

Как узнать что система не смогла найти программу для открытия и вставить, хотя бы, сообщить пользователю об этом?

READ ALSO
Не работает XOR

Не работает XOR

Второй день пытаюсь сделать шифрование Xor'ом, но все никак не получаетсяВот мой код

150
Показывает Мусор при запуске

Показывает Мусор при запуске

Ваши условия не покрывают случай, когда i или j равно n, а стало быть в ячейках с этими индексами остаются неинициализированные данныеПросто...

204
Можно ли QLineEdit сделать многострочным?

Можно ли QLineEdit сделать многострочным?

Можно ли QLineEdit сделать многострочным? Я имею ввиду чтобы там оставалась одна строка, нельзя было enter нажать, просто чтобы буквы отображались...

143
QscriptEngine Qt/C++ парсинг строки

QscriptEngine Qt/C++ парсинг строки

Помогите исправить код надо вместо 3 * 3 * 3 чтобы было сразу 3^3

232