Russian Qt Forum
Ноябрь 25, 2024, 00:32
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8 (Прочитано 9771 раз)
tician
Гость
Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
:
Июнь 16, 2009, 09:22 »
Возможно ли при помощи QT узнать какое приложение ассоцированно(для открытия) с каким типом файлом?
Записан
crossly
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #1 :
Июнь 16, 2009, 11:27 »
на разных системах по разному.... qt это определить не может...
Записан
spectre71
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #2 :
Июнь 16, 2009, 11:40 »
Для Windows есть способ - через рестр(правда не так просто)
С Linux - беда!
А для MAC есть способ?
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #3 :
Июнь 16, 2009, 15:01 »
в маке надо man open сделать. Сейчас нет под рукой ноута, точно сказать не могу. Можно погуглить как раз man open. open - командочка, которая как раз с консоли запускает файл\папку иходя из ассоциаций установленных.
Записан
spectre71
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #4 :
Июнь 16, 2009, 16:12 »
Цитата: Авварон от Июнь 16, 2009, 15:01
в маке надо man open сделать. Сейчас нет под рукой ноута, точно сказать не могу. Можно погуглить как раз man open. open - командочка, которая как раз с консоли запускает файл\папку иходя из ассоциаций установленных.
Запуск это не то. Необходимо получение некоторой ассоциации.
Например у меня в приложении под виндой я ищу в реестре(весьма не тривиально) какая программа будет запускаться(из проводника) если файл имеет расширение "txt", а потом запускаю ее когда необходимо с нужными мне файлами, которые могут иметь совсем другое расширение(но я знаю что ини тектовые).
По идее задача получить пути и коммандные строки(для запуска) программ ассоциированных с некоторим MIME типом.
Записан
BRE
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #5 :
Июнь 16, 2009, 16:43 »
А если это доверить оконным средам.
Т.е. для открытия файла использовать QDesktopServices::openUrl, если ассоциация есть, откроется соответствующая программа, если нет, то среда сама спросит с чем связать данные тип файла и запомнит это.
Как вариант...
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #6 :
Июнь 16, 2009, 16:51 »
Я так понял, что автору нужно именно не ассоциировать, а запускать.
Как пример:
1. Есть у меня прога, которая открывает файлы bla, этот тип файлов за прогой зарегистрирован.
2. Есть у меня файл blo, который имеет тот же самый формат, но я не хочу его ассоциировать, а хочу прямо запускать прогу ассоциированную с bla и передавать ей как параметр файл blo.
В данном случае решение только через платформозависимые средства.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
spectre71
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #7 :
Июнь 16, 2009, 17:20 »
Цитата: BRE от Июнь 16, 2009, 16:43
А если это доверить оконным средам.
Т.е. для открытия файла использовать QDesktopServices::openUrl, если ассоциация есть, откроется соответствующая программа, если нет, то среда сама спросит с чем связать данные тип файла и запомнит это.
Как вариант...
Я запускаю в своей проге задачи с параметрами заданными пользователем, в том числе и имена файлов.
Пользователь вбил для результата имя файла "result.txt" или "result" или "bla-bla.polnaya_fignya".
А потом просит мою прогу открыть файл в тектовом редакторе.
Записан
spectre71
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #8 :
Июнь 16, 2009, 17:23 »
Цитата: panter_dsd от Июнь 16, 2009, 16:51
Я так понял, что автору нужно именно не ассоциировать, а запускать.
Все правильно не ассоциировать, а находить что ассоциировано с MIME типом и запускать
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #9 :
Июнь 16, 2009, 17:37 »
А если предложить пользователю в настройках выбрать программу? Ты, походу, хочешь сделать подобие утилитки для TotalCommander под названием OpenFileTC, там как раз так и сделано: сначала добавляешь в список программки, а потом при запуске проги выдаешь список прог и при выборе какой-либо из них увеличиваешь ее счетчик, чтобы в следующий раз она была выше других.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Rcus
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #10 :
Июнь 16, 2009, 17:55 »
У freedesktop.org есть спецификация на этот случай (
http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-1.0.html
)
В kdelibs действительно есть обертка в виде system configuration cache (SyCoCa)
Записан
spectre71
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #11 :
Июнь 16, 2009, 17:57 »
Цитата: panter_dsd от Июнь 16, 2009, 17:37
А если предложить пользователю в настройках выбрать программу? Ты, походу, хочешь сделать подобие утилитки для TotalCommander под названием OpenFileTC, там как раз так и сделано: сначала добавляешь в список программки, а потом при запуске проги выдаешь список прог и при выборе какой-либо из них увеличиваешь ее счетчик, чтобы в следующий раз она была выше других.
1) Нет это не подобие утилитки TotalCommander, что это можешь посмотреть по ссылке в подписи
2) В настройках выбирать программу - это хорошо. Но пока пользователь туда доберется.....
До этого времени желательно уметь открывать тектовые файлы чем-то по умолчанию.
В Windows я эту задачу решил. Хотелось бы решить и под MAC.
Под Linux в среднем более продвинутые юзеры, которым будет не так сложно чего-либо настроить.
Ведь настройка это не просто указание пути на прогу, но и правильных параметров коммандной строки.
Записан
spectre71
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #12 :
Июнь 16, 2009, 18:13 »
Цитата: Rcus от Июнь 16, 2009, 17:55
У freedesktop.org есть спецификация на этот случай (
http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-1.0.html
)
В kdelibs действительно есть обертка в виде system configuration cache (SyCoCa)
Интересно. Но это только для KDE и GNOME.
И я так и не понял где эти файлы хранятся, дабы просканировать их и выудить нужные данные.
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #13 :
Июнь 16, 2009, 20:40 »
для справки - в мане пишутся файлы, используемые той или иной утилитой. Так что man open самое то.
Записан
spectre71
Гость
Re: Как ассоцируются тип файла и приложение которым нужно его открывать QT 3.3.8
«
Ответ #14 :
Июнь 16, 2009, 21:20 »
Цитата: Авварон от Июнь 16, 2009, 20:40
для справки - в мане пишутся файлы, используемые той или иной утилитой. Так что man open самое то.
Это к чему. Про какие файлы и утилиты идет реч. Подробнее пожалуйста.
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...