Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > "Воспроизвести всё" в боковой панели XP


Автор: DimS2006 3.9.2006, 05:19
Как получить к кнопке на панели в хр "воспроизвести всё",
например :
создовал плеер, и при нажатии этой кнопки все песни в папке добавлялись в плэй-лист, как у винампа и multimedia. smile 

Автор: Snowy 4.9.2006, 09:57
DimS2006, у тебя явно сложности с русским языком.
Ничего не понятно.

Автор: dumb 4.9.2006, 12:29
эта "воспроизвести все", похоже, просто "запускает"(т.е. вызывает программу, ассоциированную с данным типом файлов) все файлы в текущей папке. посему достаточно, чтобы твой плеер был прописан в ассоциациях как дефолтный обработчик для тех типов файлов, которые ты собираешься проигрывать.

Автор: Snowy 4.9.2006, 12:34
Не обязательно ассоциировать, как дефолтный.
Кроме дефолтных операций, можно прописать дополнительные.
Например на папку дефолтная операция - открыть.
А можно добавить дополнительную операцию "Воспроизвести всё в MySuperPlayer".
Но в любом случае делается через ассоциацию с типом файлов.

Автор: Mr.Floppy 4.9.2006, 14:36
[HKEY_CLASSES_ROOT\Directory\shell\SuperPlayer]
@="Играть в SuperPuperMegaPlayer"

[HKEY_CLASSES_ROOT\Directory\shell\SuperPlayer\command]
@="С:\\Program Files\\SuperPlayer\\player.exe %1"

@ - параметр "по умолчанию"

Автор: DimS2006 4.9.2006, 16:38
Вообще-то мы не на уроке русского языка SNOWY

Русский язык я знаю отлично, но когда печатаешь на клавиатуре иногда выходят ошибки...
А вот те кто не понял, что я написал уж точно давно устарели в программировании и являются устаревшими.. Я пишу на слэнге современных программистов, а тебе явно этого не понять .. Snowy... 

Твоё время вышло !!! Старина!!!

Автор: Snowy 4.9.2006, 17:16
Цитата(DimS2006 @  3.9.2006,  05:19 Найти цитируемый пост)
Как получить к кнопке на панели в хр "воспроизвести всё"
Что получить?
К какой панели? В XP сотни панелей.
Что за кнопка "Воспроизвести всё"?

Цитата(DimS2006 @  3.9.2006,  05:19 Найти цитируемый пост)
создовал плеер, и при нажатии этой кнопки все песни в папке добавлялись в плэй-лист, как у винампа и multimedia.
Кто создовал?
Что такое multimedia? Явно не то, что подразумевается в словаре...

Если хочешь получить ответ, задавай вопрос понятно.
Никто не собирается догадываться, что ты имел ввиду.

Цитата(DimS2006 @  4.9.2006,  16:38 Найти цитируемый пост)
Русский язык я знаю отлично
Я не говорю уже про количество грамматических и синтаксических ошибок.
Но хотя бы построить логически предложение можно было бы.
В текущем виде логика просто отсутствует.

Цитата(DimS2006 @  4.9.2006,  16:38 Найти цитируемый пост)
Я пишу на слэнге современных программистов, а тебе явно этого не понять .. Snowy... 
Это я оставлю без комментария, т.к. запрещено правилами.


Модератор: DimS2006, нарушение правил: п2, п11. Устное предупреждение.

Автор: dumb 4.9.2006, 17:24
[offtopic]DimS2006, твоя(и не только твоя, к сожалению) проблема в том, что русский язык ты в школе учишь плохо. а посему, помимо грамматических ошибок, ты просто не можешь построить предложение так, чтобы оно хоть как-то донесло смысл крутящегося в твоей голове вопроса.
сопли подбери и иди учить уроки. современный программист, твою налево...[/offtopic]

Цитата(Snowy @  4.9.2006,  12:34 Найти цитируемый пост)
Не обязательно ассоциировать, как дефолтный.
Кроме дефолтных операций, можно прописать дополнительные.

так речь не о дополнительных операциях, а именно о дефолтной, так как imho именно ее вызывает "воспроизвести все".

Автор: Romikgy 4.9.2006, 20:06
DimS2006, А кто те сказал что на этом форуме знают
Цитата(DimS2006 @  4.9.2006,  15:38 Найти цитируемый пост)
слэнге современных программистов

?

Цитата(DimS2006 @  4.9.2006,  15:38 Найти цитируемый пост)
 Я пишу на слэнге современных программистов

тем более это что новый язык такой?  smile 

А вообще Снежок , человек здесь уважаемый, много умных и тольковых ответов дает , и тем более он модератор!
Так что буром и на модера , хех , 
и прав он задай конкретно вопрос , получишь конкретный ответ!

Автор: DimS2006 5.9.2006, 05:19
Повторяю второй раз, для тех кто не понял... "Воспроизвести всё" находится в боковой панели WINDOWS XP (не знаю может быть у вас другой перевод), на этой панели ещё располагаются: "поиск музыки в интернете", "создать новую папку", "открыть общий доступ к этой папке" и т.д. Но не знаю, если вы пользуетесь ещё WINDOWS 98, то конечно этой панели у вас нет... А multimedia - это стандартная программа ХР, для открытия аудио и видео файлов.. (WINDOWS MULTI MEDIA 9).....

Автор: bazzzman 5.9.2006, 06:23
Цитата

"Воспроизвести всё" находится в боковой панели WINDOWS XP


Может ты хотел сказать в левой панеле проводника или у Windows есть боковая панель?  smile 

Это "explorer common tasks". У многих, думаю стоит англоязычная XP.

Цитата

А multimedia - это стандартная программа ХР, для открытия аудио и видео файлов.. (WINDOWS MULTI MEDIA 9).....


Я не знаю что это. Google тоже не знает:
http://www.google.com/search?client=opera&rls=en&q=WINDOWS+MULTI+MEDIA+9&sourceid=opera&ie=utf-8&oe=utf-8

Может WMP 9? Windows Media Player 9 - "это стандартная программа ХР, для открытия аудио и видео файлов.."???
Если нет, то расскажи что это такое...


Автор: Snowy 5.9.2006, 08:41
Хм. Кажецца я догадался.
Если в системе включен "простой вид папок", то, если открыть, например "Мой компьютер", слева будет дурацкая панелька со стандартными операциями и ещё какой-то хренью...
Я уж не помню, что там - простой вид отрубаю сразу после установки системы.
Видимо это имеется ввиду, под словом "панель xp"?

Автор: ShadeSt 5.9.2006, 09:20
DimS2006, Приведите пожалуйста маленький скриншот панели о которой Вы ведете речь. 

Цитата(DimS2006 @  5.9.2006,  05:19 Найти цитируемый пост)
 "Воспроизвести всё" находится в боковой панели WINDOWS XP

Как уже говорилось в XP панелей много, причем их можно распологать и по бокам и сверху/снизу рабочего стола, да еще и свои панели клепать можно.


Автор: ShadeSt 5.9.2006, 09:46
Цитата(Snowy @  5.9.2006,  08:41 Найти цитируемый пост)
Хм. Кажецца я догадался.Если в системе включен "простой вид папок", то, если открыть, например "Мой компьютер", слева будет дурацкая панелька со стандартными операциями и ещё какой-то хренью...


ага. точно! я как то сразу не глянул. Именно она. Называется она "Задачи для музыки"


Автор: Mr.Floppy 5.9.2006, 14:38
При нажатии "Play all" Windows запускает ассоциированное с расширением файла приложение, передавая ему в качестве параметра путь к файлу. Причем, если в папке, скажем 9 файлов, то каждый раз он будет запускать прогу, передавая путь к следующему файлу. Проверял с WMP, Foobar2000 и самодельной прогой. Кстати, пункы меню можно переименовывать, но изменять действия, вроде как, нельзя.
Названия пунктов меню храняться здесь:
HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache

Как добавлять свои пункты - неизвестно, возможно создавать кнопку на чужом контроле.

А можно и MSDN почитать.

Добавлено @ 14:40 
P.S. Надо этот шедевр
Цитата
Как получить к кнопке на панели в хр "воспроизвести всё"...

куда-нибудь записать smile

Автор: ShadeSt 5.9.2006, 14:54
Цитата(Mr.Floppy @  5.9.2006,  14:38 Найти цитируемый пост)
HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache


Что то я, когда утром копался с этим, тоже в какой то ветке реестра с именем MUICache (может даже в этой же) поменял название - сработало только пока было открыть окно, потом по новой вошел в папку с mp3 файлами и название опять было стандартным - в реестре тоже восстановилось.. да и судя по названию ветки (кэш) и должно было.. видимо винда там названия временно хранит.
если глянуть в shell32.dll то много названий веток реестра можно найти:

Цитата

HKLM,"%PATH_AUTOPLAY%\ContentTypeHandlers\MusicFilesContentHandler


еще встречается MusicFilesContentSniffer - но только уже в реестре..
а вот как добавить свои пункты - пока ступор....

Автор: Snowy 5.9.2006, 14:57
Название трогать незачем.
Тебе нужно настроить свою ассоциацию с нужными типами файлов.
Вот пример для текстового файла: http://forum.vingrad.ru/index.php?showtopic=59047
по аналогии можно сделать для mp3 и любого другого расширения.

Автор: ShadeSt 5.9.2006, 15:06
Цитата(Snowy @  5.9.2006,  14:57 Найти цитируемый пост)
Тебе нужно настроить свою ассоциацию с нужными типами файлов.


это уже понятно.

но вот еще интересно:
Цитата(ShadeSt @  5.9.2006,  14:54 Найти цитируемый пост)
а вот как добавить свои пункты


Автор: DimS2006 5.9.2006, 17:25
Ну а если программа многооконная, тогда при нажатии кнопки воспроизвести всё, винда просто открывает каждый файл по отдельности... 

Вот скриншот этой панели...

Автор: Mr.Floppy 5.9.2006, 17:46
Цитата
Ну а если программа многооконная

Какая? И при чем тут многооконность?

Цитата
открывает каждый файл по отдельности

А как еще можно?

Автор: bems 11.9.2006, 16:37
Цитата(DimS2006 @  5.9.2006,  17:25 Найти цитируемый пост)
винда просто открывает каждый файл по отдельности... 
Настрой действие на использование DDE
Или в каждом новом процессе передавай параметры командной строки первому запущеному и выходи

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)