Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Системное программирование и WinAPI > Запуск обработки файла при нажатии на него |
Автор: Yogurt 25.7.2011, 10:22 |
Здравствуйте, всем Есть аппарат, обрабатывающий данные с датчиков и создающий из всех поступивших данных определённую файл-структуру. Есть программа, которая обрабатывает этот файл, показывает графики, статистику, в общем полный анализ Как сделать, чтобы при нажатие на файл данных (расширения .bin и .dat), программа запускалась, и в неё передавался полный путь к файлу. Второй вопрос, коррелирующийся с первым, - чтобы при нажатии на файл правой кнопки мыши, в выпадающем списке появился пункт запуск программы и передачи в программу полного пути к файлу P.S. Среда разработки - VS |
Автор: volatile 25.7.2011, 13:12 |
Вообщето это делается средствами ОС. Нажимаете шифт и правую кнопку мыши на файле. "open with" (или "open" если у файла нет ассоциаций) Выбираете вашу программу, ставите галочке "Always use selected program ..." |
Автор: Yogurt 25.7.2011, 16:26 |
Да, вручную это можно сделать. Но, когда я выполнил эти действия, подгружаемые файлы, которые лежат рядом с экзешником, стали мне недоступны. Меня интересует, как автоматизировать этот процесс. На сколько я понимаю, это всё прописывается где-то в реестре. Как это делается программно? |
Автор: volatile 26.7.2011, 00:12 | ||
Щас посмотрю... программно нужно прописать в реестр ключ
где .eee <- это ваше расширение C:\\dir1\\dir2\\dir3\\proga.exe <- путь к вашей программе. |
Автор: Yogurt 26.7.2011, 10:28 |
Спасибо А как сделать, чтобы по щелчку правой кнопки мыши в выпадающем списке появлялась возможность отправить в программ P.S. Дело в том, что программ несколько, и надо выбрать, какой из них открыть файл |
Автор: volatile 26.7.2011, 13:22 |
Yogurt, есть несколько путей решения. 1. Сложный. Написание своего плагина для вин.експлорера. Решает любое самое прихотливое ваше желание. Если вы решили писать его, то и тему надо соответственно назвать. Скажу честно, я не специалист по таким плагинам. 2. Простой. Правка реестра с целью добавить несколько программ в список "open with" Но это уже вопросы не связанный никак с С/С++ Я могу конечно поискать на форумах посвященных Windows разные трюки реестра, но лучше если вы сделаете это сами. Как вариант, посмотрите в реестре как это сделано у других расширений, и сделайте аналогично. |
Автор: cvid 5.8.2011, 15:47 | ||
[HKEY_CLASSES_ROOT\*\shell\Открыть в моей проге] @="" [HKEY_CLASSES_ROOT\*\shell\Открыть в моей проге\command] @="myprogram.exe %1" и будет вам счастье) |