|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.03.2011, 13:45 | #1 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
[Проблема]Создание нового типа файла и ассоциация его с программой
Всем доброго времени суток!
Задача такая: Создать новый тип файла и ассоциировать его со своей программой. Я сообразил это так: Код:
Долее почитал статейку понял что CLASSES_ROOT не есть хорошо. Переделал: Код:
Прошу пожалуйста, обьяснить почему и как надо привильно делать. Последний раз редактировалось Человек_Борща; 07.03.2011 в 14:02. |
07.03.2011, 16:11 | #2 |
Подтвердите свой е-майл
Регистрация: 19.12.2010
Сообщений: 808
|
Попробуйте вот так:
Регистрация своего типа файлов и пункт в контекстном меню После регистрации расширения система будет открывать такие файлы с помощью указанной программы - т.е. передавать имя файла как параметр и соответственно обработать имя файла можно с помощью ParamsCount + ParamStrКод Код:
|
07.03.2011, 17:29 | #3 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Собственно 2 вопроса:
1. Почему расшрение в HKEY_Classes_root а пункт контекстного меню в HKCU\SoftWare\classes? Ведь слеледуя советам GunSmoker'a(Пример 3) - лучше всего заводить новые расширения в HKCU\SoftWare\Classes(Ссылка в первом сообщении). 2. Если рассматривать что программа закрыта и открывается ассоциированный с ней файл то, программа запускается и загружает файл. А вот если программа уже запущена, и юзер открывает файл не через программу, а через контекстное меню то, как передать этот файл в уже открытую программу? Последний раз редактировалось Человек_Борща; 07.03.2011 в 17:35. |
07.03.2011, 18:25 | #4 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
при использовании контекстного меню, все равно производится запуск того же ассоциированного приложения и уже забота этого приложения читать параметры запуска через paramstr() и обрабатывать нужным образом...
Код:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
07.03.2011, 20:49 | #5 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Ну значится вот что у меня получилось=) И работает!
Пример приаттачил, там же упакованный exe, он то и весит 200 кб=) Единственный оставшийся вопрос, открытие файла из оболочки винды в уже открытой программе. Например как это делает Light Alloy: Условие: 1-а копия программы уже запущена. Сабж: Юзер открывает в оболочке виндов ещё один avi , и вместо того, чтобы открыть новое окно Light Alloy, происходит следующее: Новый файл просто поподает в плей-лист уже рабочей копии. Вопрос: Как такое реализовать у себя? Откуда винды знают об уже запущеной копии программы и передают файл в плей-лист LA? Знающие люди помогите пожалуйста! Последний раз редактировалось Человек_Борща; 07.03.2011 в 20:53. |
07.03.2011, 21:35 | #6 |
DelphiProger
Участник клуба
Регистрация: 14.11.2010
Сообщений: 1,023
|
ет реализовываеца при запуске ехе, она проверяет если уже запушеня и передает даные тои ехе, гдет такое было, шечас гляну, если наиду скину сс ылку
----------------------------------------------------------------------------------------------- вот нашел http://programmersforum.ru/showthrea...hlight=listbox
VirusN13
Последний раз редактировалось ArtGrek; 07.03.2011 в 21:45. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание нового WAV-файла++ | oren_yastreb | Мультимедиа в Delphi | 0 | 17.10.2010 01:58 |
Ассоциация файлов со своей программой | dmitriegorovih | Общие вопросы Delphi | 7 | 21.08.2010 12:41 |
Выборка и создание нового файла | kzld | Microsoft Office Excel | 15 | 28.12.2009 10:49 |
Delphi. Создание нового класса, его "предков". | Krechet | Помощь студентам | 0 | 26.04.2009 15:52 |
Создание нового типа | master_root | Общие вопросы Delphi | 2 | 02.07.2008 22:33 |