Russian Qt Forum
Ноябрь 24, 2024, 23:38
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Запуск другого файла из своей программы
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Запуск другого файла из своей программы (Прочитано 7600 раз)
Andrew Vladoff
Гость
Запуск другого файла из своей программы
«
:
Март 26, 2009, 20:51 »
Как запустить файл, например .pdf, из своей программы. В Windows было ShellExecute, а здесь?
Записан
spirit
Гость
Re: Запуск другого файла из своей программы
«
Ответ #1 :
Март 26, 2009, 21:09 »
м...
QDesktopServices::openUrl
хотя не уверен.
Записан
pastor
Administrator
Джедай : наставник для всех
Offline
Сообщений: 2901
Re: Запуск другого файла из своей программы
«
Ответ #2 :
Март 26, 2009, 21:15 »
QDesktopServices::openUrl поможет
Записан
Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Barmaglodd
Гость
Re: Запуск другого файла из своей программы
«
Ответ #3 :
Март 27, 2009, 08:05 »
Не совсем по теме, но ... Как вызвать внешнюю программу с результатом типа ShellExecute. Для QProcess надо, чтобы вызываемая программа либо рядом лежала, либо была прописана в PATH, а ShellExecute ещё где-то ищет. Например ShellExecute (0, "", "excel", "boo.xls", 0, SW_SHOWMAXIMIZED) откроет файл в MSExcel, а QProcess не найдёт Excel:(
Записан
crossly
Гость
Re: Запуск другого файла из своей программы
«
Ответ #4 :
Март 27, 2009, 10:24 »
openUrl использует ShellExecute на MSWIN...
Записан
Barmaglodd
Гость
Re: Запуск другого файла из своей программы
«
Ответ #5 :
Март 27, 2009, 11:21 »
Это, конечно, замечательно, но прокатывает только, если для данного типа файла прописана программа, которая его открывает. А мне например надо xml в excel открыть
Записан
pastor
Administrator
Джедай : наставник для всех
Offline
Сообщений: 2901
Re: Запуск другого файла из своей программы
«
Ответ #6 :
Март 27, 2009, 11:25 »
Цитата: Barmaglodd от Март 27, 2009, 08:05
Для QProcess надо, чтобы вызываемая программа либо рядом лежала, либо была прописана в PATH
А где такое пишут?
Укажи в качестве программы полный путь к excel, а в качестве аргумента путь к открываемому файлу
Записан
Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Barmaglodd
Гость
Re: Запуск другого файла из своей программы
«
Ответ #7 :
Март 27, 2009, 12:29 »
Цитата: pastor от Март 27, 2009, 11:25
А где такое пишут?
Я не знаю как ShellExecute путь к excel получает.
Цитата: pastor от Март 27, 2009, 11:25
Укажи в качестве программы полный путь к excel, а в качестве аргумента путь к открываемому файлу
Тогда всё равно надо будет как-то путь к excel найти, т.е. лезть в реестр, и выигрыша от использования QProcess никакого
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Re: Запуск другого файла из своей программы
«
Ответ #8 :
Март 27, 2009, 13:19 »
Цитата: Barmaglodd от Март 27, 2009, 08:05
Не совсем по теме, но ... Как вызвать внешнюю программу с результатом типа ShellExecute. Для QProcess надо, чтобы вызываемая программа либо рядом лежала, либо была прописана в PATH, а ShellExecute ещё где-то ищет. Например ShellExecute (0, "", "excel", "boo.xls", 0, SW_SHOWMAXIMIZED) откроет файл в MSExcel, а QProcess не найдёт Excel:(
QDesktopServices::openURL() должна находить, есть ей передать boo.xls.
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
spirit
Гость
Re: Запуск другого файла из своей программы
«
Ответ #9 :
Март 27, 2009, 15:35 »
Цитата: Racheengel от Март 27, 2009, 13:19
Цитата: Barmaglodd от Март 27, 2009, 08:05
Не совсем по теме, но ... Как вызвать внешнюю программу с результатом типа ShellExecute. Для QProcess надо, чтобы вызываемая программа либо рядом лежала, либо была прописана в PATH, а ShellExecute ещё где-то ищет. Например ShellExecute (0, "", "excel", "boo.xls", 0, SW_SHOWMAXIMIZED) откроет файл в MSExcel, а QProcess не найдёт Excel:(
QDesktopServices::openURL() должна находить, есть ей передать boo.xls.
человеку нужно xml при помощи ecxel'я открыть.
Записан
Ишан
Гость
Re: Запуск другого файла из своей программы
«
Ответ #10 :
Февраль 19, 2014, 14:25 »
Привет всем! Я тоже не мог найти ответ на этот вопрос, спасибо всем тем кто написали ответы) Особенно: spirit и pastor!
Записан
BuRn
Гость
Re: Запуск другого файла из своей программы
«
Ответ #11 :
Февраль 24, 2014, 21:04 »
А если порыться по реестру? Если я не ошибаюсь, от туда можно вытащить путь до экселя или ворда, ну а там, дело за малым
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...