Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Добавление пункта к меню винды 
:(
    Опции темы
Burich-Caeser
  Дата 21.12.2004, 04:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 28.7.2004

Репутация: нет
Всего: 1



Нужно, чтобы при клике на любую папку, система в обычное меню добавляла пункт "открыть с помощью "имя проги"". При клике на этот пункт должна запускаться моя прога.

Пока разобрался только, как это сделать с определенным расширением (пара ключей в рее), а вот до этого никак не допру. Слышал, что надо создавать библиотеку, как COM объект, чтоб она расширяла возможности Винды, да вот только без реального примера ничего не прокатывает. smile

Заранее спасибо.
--------------------
Ты брошен вниз силой судьбы,Ты унижен и раздавлен,Время забыть то, кем ты был,Но помнить, кем ты стал...
PM MAIL   Вверх
dm9
Дата 21.12.2004, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 1
Всего: 137



HKEY_CLASSES_ROOT\Folder\shell\your_item\command

Дефолтное значение - путь к программе обработки твоего файла... В конце %1.
Добавлено @ 12:20
Это он в корень менюшки так добавит...
Добавлено @ 12:21
В общем, всё так же, как и для обычных файлов, но изменения проводить для ключа HKEY_CLASSES_ROOT\Folder
PM MAIL ICQ   Вверх
Burich-Caeser
Дата 21.12.2004, 20:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 28.7.2004

Репутация: нет
Всего: 1



dm9 smile Торможу... Можно небольшой примерчик, все-таки? Есть подозрение, что я неправильно понял... Хотя сейчас грузану Delphi, проверю.
--------------------
Ты брошен вниз силой судьбы,Ты унижен и раздавлен,Время забыть то, кем ты был,Но помнить, кем ты стал...
PM MAIL   Вверх
dm9
Дата 21.12.2004, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 1
Всего: 137



Возьми regedit и создай тот ключ, который я написал.
Внутри ключа command дефолтное значение установи в "C:\Program Files\Far\Far.exe %1".
Это означает, что Far будет открывать эту папку при нажатии в explorer-е на пункт контекстного меню "your_item". Если far не установлен, впиши другую программу.

Потом когда получится, сделаешь то же на Delphi.
PM MAIL ICQ   Вверх
Burich-Caeser
Дата 22.12.2004, 00:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 28.7.2004

Репутация: нет
Всего: 1



dm9Все, я проснулся, а тормозная жидкость выветрилась. Спасибо большое. Теперь все работает. Я уж хотел книгу по СЩЬ объектам мучать (она еще и для Си программеров).

Еще раз СПАСИБО. smile

З.Ы. %1 - это, чтоб имя папки было передано, как параметр? Если да, то можно не отвечать smile

Это сообщение отредактировал(а) Burich-Caeser - 22.12.2004, 00:56
--------------------
Ты брошен вниз силой судьбы,Ты унижен и раздавлен,Время забыть то, кем ты был,Но помнить, кем ты стал...
PM MAIL   Вверх
dm9
Дата 22.12.2004, 01:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 1
Всего: 137



Не отвечаю smile
Добавлено @ 01:42
Только не имя, а путь к папке + имя.
Добавлено @ 01:46
А получать этот параметр так:
if ParamCount < 1
then ShowMessage ('Bug')
else ShowMessage ('Папка: ' + ParamStr (1));
PM MAIL ICQ   Вверх
Burich-Caeser
Дата 22.12.2004, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 28.7.2004

Репутация: нет
Всего: 1



dm9Короче, как в родном консольном Паскале.
Еще раз огромное спасибо.
--------------------
Ты брошен вниз силой судьбы,Ты унижен и раздавлен,Время забыть то, кем ты был,Но помнить, кем ты стал...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.1107 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.