Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Qt
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
Avazart
Эксперт С++
7738 / 5648 / 550
Регистрация: 10.12.2010
Сообщений: 25,507
Записей в блоге: 17
1

QProcess

29.05.2012, 14:10. Просмотров 2364. Ответов 7
Метки нет (Все метки)

Есть строка-путь, но не известно к чему этот путь- к exe, папки, ярлыку...

Как узнать и запустить это объект.

Под виндой есть вариант запускать папку можно через эксплоуэр но как узнать что это именно папка а не файл?

Интерисуют оба рещения и под Win и под Lin
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2012, 14:10
Ответы с готовыми решениями:

QProcess
Всем привет. При запуске процессов более 62 получаю вот такое предупреждение...

QProcess
Добрый день, коллеги! Вопрос в следующем, пытаюсь читать вывод но читается...

QProcess
Не могу решить одну проблему. Есть код: //задаём процесс QProcess...

Qt QProcess
Здравствуйте как можно запустить отладчик gdb.exe, чтобы потом можно было из...

QProcess
Всем доброго времени суток! Есть у меня небольшая проблемка с QProcess....

7
Maxim Prishchepa
Эксперт С++
1924 / 1036 / 109
Регистрация: 29.03.2010
Сообщений: 3,167
29.05.2012, 14:18 2
C++ (Qt)
1
QFileInfo
методы:
C++ (Qt)
1
2
3
bool    isDir () const
bool    isExecutable () const
bool    isFile () const
2
Avazart
Эксперт С++
7738 / 5648 / 550
Регистрация: 10.12.2010
Сообщений: 25,507
Записей в блоге: 17
29.05.2012, 14:47  [ТС] 3
C++
1
bool IsSymLink()
Добавлено через 12 минут
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
void MainWindow::on_pushButton_clicked()
{
QString Command="";
QString Path=ui->lineEdit->text();
QFileInfo PathInfo(Path);
 
#ifdef Q_WS_WIN
    if(PathInfo.isDir()) Command="explorer.exe ";
#endif
 
Process->start(Command+Path);
}
Как тогда запустить ярлык с помощью QProcess?
0
Maxim Prishchepa
Эксперт С++
1924 / 1036 / 109
Регистрация: 29.03.2010
Сообщений: 3,167
29.05.2012, 15:08 4
поищите по форуму, тема уже была 100%, а я сейчас у себя в коде гляну, если найду - кину..

Добавлено через 3 минуты
таки нашел:
C++ (Qt)
1
2
3
4
 QString path = QString("\"%1%2%3%2%4\"").arg(QApplication::applicationDirPath()).arg(QDir::separator()).arg(XML_FOLDER).arg("ReadMe.docx");
    path = QDir::fromNativeSeparators(path);
    if(!QDesktopServices::openUrl(QUrl(path, QUrl::TolerantMode)))
            QMessageBox::warning(this, tr("File not found"), QString("%1\n%2").arg(tr("Can't find the help file!")).arg(path));
0
Avazart
Эксперт С++
7738 / 5648 / 550
Регистрация: 10.12.2010
Сообщений: 25,507
Записей в блоге: 17
29.05.2012, 15:50  [ТС] 5
Брр что это...?

Поиск чет ниче не выдает, как в принципе и гугл...
И Шлее что-то об это не пишит...

Добавлено через 34 минуты
И вот такой еще момент... как запустить например txt,doc и другие файлы запускаемые через проги асоциированые с ихними расширениями(не указывая их явно)?

Не уже ли это все не предусмотренно?
0
Maxim Prishchepa
Эксперт С++
1924 / 1036 / 109
Регистрация: 29.03.2010
Сообщений: 3,167
29.05.2012, 16:15 6
смотрите мой предыдущий пост!
C++ (Qt)
1
QDesktopServices::openUrl(QUrl(path, QUrl::TolerantMode))
Вам в помощь!
1
Avazart
Эксперт С++
7738 / 5648 / 550
Регистрация: 10.12.2010
Сообщений: 25,507
Записей в блоге: 17
29.05.2012, 18:42  [ТС] 7
Как я понимаю через процесс никак...

C++ (Qt)
1
QDesktopServices::openUrl(QUrl(path, QUrl::TolerantMode))
Вам в помощь!
Ну как его использовать, чет немогу найти полного описания и примера использования.
Что и куда...

Добавлено через 23 минуты
Ага нашел ошибку- нужен тройной слеш.

C++
1
2
Path="file:///"+ Path;
QDesktopServices::openUrl(QUrl(Path, QUrl::TolerantMode));
Но описание тонкостей на русском бы не помешало...
0
Maxim Prishchepa
Эксперт С++
1924 / 1036 / 109
Регистрация: 29.03.2010
Сообщений: 3,167
30.05.2012, 09:35 8
Цитата Сообщение от Avazart Посмотреть сообщение
Но описание тонкостей на русском бы не помешало...
если хотите программировать - отвыкайте всех тонкостей на русском не будет никогда, а когда будут более или менее норм. аспекты описаны, эту технологию уже на помойку выкинуть можно будет. + перевод, это все же не оригинал, и всегда будут ошибки перевода, посему, моё ИМХО:
- читать доки по программированию в оригинале - это самое правильное решение проблемы....
1
30.05.2012, 09:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.05.2012, 09:35

QProcess+QProgressBar
Кому не трудно подскажите пожалуйста. Решил сделать интерфейс для консольной...

QProcess не запускается
Имеется функция примерно такого вида: void...

Qprocess и qwebview
Подскажите, как отобразить в qwebview результат работы приложения, запущенного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru