Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > ОС и железо
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 24.05.2009, 20:07
Ambassador Ambassador вне форума
Прохожий
 
Регистрация: 24.05.2009
Сообщения: 18
Репутация: 10
Вопрос Ассоциативное выполнение

народ, объясните мне, плиз как сделать так, чтобы при нажатии на файл с определённым расширением(например mp3) открывалась моя программа и выполнялся заданный код(я плеер делаю музыкальный) только описывайте пожалуйста поподробнее ато я нубоват немного
Ответить с цитированием
  #2  
Старый 24.05.2009, 20:47
Nyctos Kasignete Nyctos Kasignete вне форума
Активный
 
Регистрация: 29.03.2009
Сообщения: 300
Репутация: 94
По умолчанию

В реестре отыщите раздел HKEY_CLASSES_ROOT\.mp3. Задайте (руками или программно, если программа должна сама регистрировать этот тип файлов на себя) значение по умолчанию равным, например, my_mp3file. Затем в том же самом HKEY_CLASSES_ROOT создайте раздел my_mp3file. В нём создайте вложенные подразделы вот так: my_mp3file\shell\open\command. И там присвойте значение по умолчанию равным "C:\Program Files\Your_Program_Path\Your_Program.exe" "%1". Вместо красного текста — реальный путь к вашей пргорамме. После этого двойной щелчок на файлах типа .mp3 будет приводить к открытию вашей программе с параметром, в котором прописан путь к mp3 файлу. Извлечь этот параметр программа может с помощью функции ParamStr.
Ответить с цитированием
  #3  
Старый 24.05.2009, 21:33
Ambassador Ambassador вне форума
Прохожий
 
Регистрация: 24.05.2009
Сообщения: 18
Репутация: 10
По умолчанию

Огромное спасибо, ща буду пробовать
Ответить с цитированием
  #4  
Старый 24.05.2009, 22:07
Ambassador Ambassador вне форума
Прохожий
 
Регистрация: 24.05.2009
Сообщения: 18
Репутация: 10
По умолчанию

var
s:string;
N:integer;
...
s:=paramstr(N);
А что такое N? какое число ставить, и что оно обозначает?

-------------добавил позже------------------

пробовал N = 0,1 paramstr возвращает почемуто путь до проги а не до открываемого файла

-------------добавил позже------------------

фиг знает чето ступил выставил снова значение 1 и всё заработало

Последний раз редактировалось Ambassador, 24.05.2009 в 22:20.
Ответить с цитированием
  #5  
Старый 24.05.2009, 22:30
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Функция ParamStr(N) - возвращает n-параметр который передали при старте приложения.
Например если вы запустите прилодение так:
Test.exe Параметр1 параметр2
то вызов в приложении функции ParamStr вернет:
S1 := ParamStr(1); //Параметр1
S2 := ParamStr(2); //параметр2
А вызов ParamStr(0) уже вернет путь к приложению.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:58.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter