Chertenok.ru - все о программировании
Вход  |  Регистрация  |  Поиск 
Праздник
Завтра :

День славянской письменности и культуры


Определить по расширению необходимую программу


Новая тема  Ответить  Печать Предыдущая тема  Следующая тема
Автор Сообщение
DM-Lg
Частый гость


Возраст: 41
Знак зодиака: Близнецы
Зарегистрирован: 12.09.2005
Сообщения: 30
Откуда: Луганск
СообщениеВт, 14-Сен-2010 10:40    Заголовок сообщения: Определить по расширению необходимую программу
Цитата

Всем здрасте!
Необходимо открыть фото во внешнем приложении используемом win по умолчанию.
Подскажите пожалуйста, как по расширению определитель какой (какими) программами открываются документы.
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж Шурик
Я живу тут....


Возраст: 42
Знак зодиака: Овен
Зарегистрирован: 15.01.2003
Сообщения: 1951
Откуда: Киев
СообщениеВт, 14-Сен-2010 13:22 
Цитата

А зачем тебе определять каким приложением это открывается?
Можно предоставить это системе: WinExec( имя_файла, SW_Show )
Ещё вариант: ShellExecute( 0, 'open', имя_файла, nil, nil, SW_SHOW )

Добавлено спустя 7 минут 51 секунду:

Если тебе нужно именно приложение, ассоциированное расширению -- можно найти через реестр. Открой regedit на значении "HKEY_CLASSES_ROOT\.<расширение>" . Там будет значение по умолчанию. Это имя ключа реестра, где описаны действия. Открываешь "HKEY_CLASSES_ROOT\<имя>\shell\open\command". Там прописана команда для открытия файла. Наверно есть какой-то API для этого, но я его не знаю.

_________________
Ответ готов, готов ли твой вопрос?
В начало
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
DM-Lg
Частый гость


Возраст: 41
Знак зодиака: Близнецы
Зарегистрирован: 12.09.2005
Сообщения: 30
Откуда: Луганск
СообщениеВт, 14-Сен-2010 13:56 
Цитата

Спасибо за ответ. Не всегда по умолчанию лучшая для просмотра фото, а выбор это хорошо Wink).
Я перестал тупить и нашел - список программ лежит в ветке HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж Ktf
Администратор


Возраст: 32
Знак зодиака: Рак
Зарегистрирован: 15.05.2005
Сообщения: 1502
Откуда: localhost
СообщениеСр, 15-Сен-2010 4:45 
Цитата

Если нужен выбор программы, то можно воспользоваться еще одной возможностью системы: вызвать для твоего файла стандартный диалог выбора "Открыть с помощью".
delphi:
  1. WinExec(PChar('rundll32.exe shell32.dll,OpenAs_RunDLL '+FileName), SW_SHOW);

_________________
Пойду посплю перед сном.
В начало
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Страница 1 из 1
Перейти:  
Новая тема  Ответить  Печать

Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете присоединять файлы в этом форуме
Вы можете скачивать файлы в этом форуме
хостинг от .masterhost 
Rambler's Top100