Автовоспроизведение - AutoPlay - Wikipedia
Автовоспроизведение, функция, представленная в Windows 98, исследует недавно обнаруженный съемный средства массовой информации и устройств, и на основе контента, такого как изображения, музыкальные или видеофайлы, запускает соответствующее приложение для воспроизведения или отображения контента.[1] Это тесно связано с Автозапуск функция операционной системы. Автозапуск был создан для того, чтобы упростить использование периферийный устройства - Mp3-плееры, карты памяти, USB-накопители и другие - путем автоматического запуска программного обеспечения, необходимого для доступа и просмотра контента на этих устройствах. AutoPlay можно улучшить с помощью программного и аппаратного обеспечения, совместимого с AutoPlay. Пользователь может настроить его для связывания избранных приложений с событиями и действиями автозапуска.
Обзор
Когда пользователь вставляет CD-ROM в привод или подключает USB-камеру, Windows обнаруживает прибытие и запускает процесс проверки устройства или поиска на носителе. Он ищет свойства устройства или содержимого на носителе, чтобы AutoPlay мог предоставить пользователю набор значимых параметров. Когда пользователь делает определенный выбор, у него также есть возможность сделать этот выбор автоматическим, когда Windows в следующий раз увидит это содержимое или устройство.[2]
В диалоговом окне отображается результат того, что пользователь поместил DVD в устройство чтения DVD, в данном случае D: водить машину. AutoPlay определил, что контент, скорее всего, является DVD-фильмом, и на основе этого решения представляет пользователю набор действий. Эти действия называются Обработчики и есть наборы обработчиков, связанных с различными типами контента. Теперь пользователь может принять решение и нажать ОК, чтобы продолжить. Однако, если они также отметят поле «Всегда выполнять выбранное действие» на этом этапе, они не будут получать запрос в следующий раз, когда этот конкретный тип контента будет виден на этом конкретном диске; выбранное приложение запустится автоматически.
Свойства автозапуска
Если пользователь сожалеет об этом решении или хочет сделать автоматический выбор автозапуска для любого конкретного типа контента, свойства автозапуска для любого диска доступны через Мой компьютер иконка рабочего стола. Выберите диск, а затем «Файл / Свойства» в проводник Виндоус меню, за которым следует выбор вкладки Автозапуск, дает диалоговое окно, подобное показанному. Типы контента можно выбрать в раскрывающемся списке. Здесь диалоговое окно показывает доступные обработчики, если AutoPlay когда-либо определяет тип содержимого на диске. D: быть «Картинками». Выбор действия для выполнения делает это действие автоматическим для этого пользователя. Выбор «Запрашивать каждый раз, чтобы выбрать действие» удаляет все ассоциации; Автозапуск подскажет в следующий раз.
Доступные типы содержимого зависят от типа выбранного диска. Картинки, музыкальные файлы и видео файлы доступны с любого диска. DVD- и CD-приводы также могут иметь «Музыкальный компакт-диск» или «DVD-фильм», а Windows Vista добавляет в список другие, например «Видео-CD-фильм».
Смешанный контент
«Смешанное содержимое» - это результат того, что типы содержимого файлов попадают в несколько типов содержимого: изображения, музыкальные файлы или видео файлы. Обратите внимание, что компакт-диск, содержащий звуковые дорожки, всегда рассматривается Windows как «Музыкальный компакт-диск», независимо от наличия дорожек данных.[3] Следовательно, компакт-диск с файлами изображений, видеофайлами и звуковыми дорожками является «Музыкальным компакт-диском»; это не «смешанный контент».
Если это результат решения об автозапуске, пользователю всегда отображается диалоговое окно автозапуска. Он будет содержать набор приложений, которые считаются подходящими для найденного контента. Таким образом, если на флэш-накопителе обнаружены как музыкальные файлы, так и видеофайлы, пользователь сможет выбрать один из обработчиков для «Музыкальных файлов» вместе с обработчиками для «Видео файлов». В этом случае пользователь не может сделать свой выбор по умолчанию.
Однако диалоговое окно свойств автозапуска для любого диска обычно дает «Смешанное содержимое» в качестве параметра типа содержимого. Доступные здесь параметры ограничены действиями, которые могут обрабатывать файлы любого типа, обычно «Открыть папку для просмотра файлов» - единственный обработчик, указанный здесь. Это позволяет пользователю сделать это действие по умолчанию для смешанного содержимого.
Устройства без объема
Некоторые типы устройств не отображаются в виде букв дисков в «Моем компьютере». Они называются не объемный устройства, и AutoPlay обрабатывает их несколько иначе, чем объем устройства, такие как CD и DVD. В эту категорию попадают многие цифровые фотоаппараты и видеоустройства.
Поскольку Windows не может проверять файлы на устройстве для определения типа содержимого, решение о дальнейших действиях остается за производителем. Производитель может зарегистрировать обработчики для своего конкретного устройства, может добавить свое устройство в группу устройств (например: ZipDrives) или разрешить классу устройства (например: всем устройствам, которые являются видеокамерами) обрабатывать их устройства за них. Это определяет, какие обработчики будут перечислены в диалоговом окне AutoPlay при обнаружении их устройства.
Поскольку устройства этого типа не имеют буквы диска, свойства автозапуска не могут быть доступны и изменены через «Мой компьютер». Однако, когда устройство подключено, обнаружение заставляет Windows помещать значок в область уведомлений панели задач (обычно называемую поднос). Теперь настройки автозапуска для этого устройства можно изменить, щелкнув этот значок. На соседнем изображении показан значок, появившийся при подключении видеокамеры.
Настройки по умолчанию
При новой установке Windows набор приложений-обработчиков по умолчанию регистрируется в системе AutoPlay.[2] Ниже приведены значения по умолчанию для Windows XP SP2. В Действие и Провайдер представляют собой просто строки, хранящиеся в обработчике, они могут варьироваться, чтобы дать пользователю лучшее представление о том, что произойдет, если он выберет это действие. Они также могут быть изменены в соответствии с предпочтительным языком пользователя. Многие обработчики используют одно и то же приложение Windows; например, Windows Media Player используется для воспроизведения музыкальных файлов, а также фильмов DVD. Слово «использование» добавлено функцией AutoPlay, чтобы аккуратно соединить две строки.
Содержание | Действие | Провайдер |
---|---|---|
Музыкальные файлы | Играть в | Проигрыватель Windows Media |
Открыть папку для просмотра файлов | проводник Виндоус | |
Картинки | Скопируйте изображения в папку на моем компьютере | Мастер сканера и камеры Microsoft |
Просмотр слайд-шоу изображений | Программа просмотра изображений и факсов Windows | |
Распечатать картинки | Мастер печати фотографий | |
Открыть папку для просмотра файлов | проводник Виндоус | |
Видео файлы | Играть в | Проигрыватель Windows Media |
Открыть папку для просмотра файлов | проводник Виндоус | |
Смешанный контент | Открыть папку для просмотра файлов | проводник Виндоус |
Музыкальный компакт-диск | Копировать музыку с компакт-диска | Проигрыватель Windows Media |
Воспроизвести аудио компакт-диск | Проигрыватель Windows Media | |
Открыть папку для просмотра файлов | проводник Виндоус | |
DVD фильм | Воспроизвести DVD фильм | Проигрыватель Windows Media |
Открыть папку для просмотра файлов | проводник Виндоус |
Windows 95 и Windows 98
В Windows 95 и Windows 98 есть примитивная версия AutoPlay. Его единственная задача - иметь дело с Audio CD и Movie DVD и запускать приложение для работы с ними. Если новое поступление не попадает ни в одну из этих категорий, Windows продолжает обычный процесс автозапуска.[4]
Действия, предпринимаемые с аудио-компакт-дисками и DVD-дисками с фильмами, по сути, рассматривают оба типа носителей, как если бы они файлы; Затем Explorer просто выполняет действие по умолчанию, связанное с этим типом файла. Типы файлов и связанные с ними действия можно просмотреть и изменить из любой папки проводника на вкладке «Типы файлов» меню «Инструменты / Параметры папки». Они хранятся в Реестр под HKEY_CLASSES_ROOT.
Если компакт-диск Красная книга стандартного формата Audio CD, затем Explorer вызывает действие по умолчанию, зарегистрированное для AudioCD тип файла. Обычно это "Играть" и обычно вызывает cdplayer.exe.[5]
Если DVD представляет собой DVD с фильмом, Explorer вызывает действие по умолчанию, зарегистрированное для DVD тип файла. DVD-диски с фильмами распознаются по наличию файла video_ts video_ts.ifo. Действие для DVD также обычно установлено на «Воспроизвести» и обычно вызывает dvdplay.exe.
Тот факт, что проверка аудио-компакт-дисков и DVD-дисков с фильмами выполняется до автозапуска, имеет последствия для отключения автоматического воспроизведения этих типов носителей. Отключение автозапуска через Реестр или групповая политика или ищу QueryCancelAutoPlay сообщения в приложении не препятствуют автоматическому воспроизведению этих типов мультимедиа при вставке.[6]
Однако можно отключить Audio CD, отредактировав тип файла для AudioCD и нажав «Установить по умолчанию». Это удалит действие Play как действие по умолчанию для этого типа файла. В качестве альтернативы можно изменить запись (По умолчанию) под HKEY_CLASSES_ROOT AudioCD Shell ключ к "" (пустая строка) выполнит то же самое. Действие отключения для DVD с фильмами такое же, с «DVD», используемым вместо «AudioCD».
Соответствующие настройки реестра показаны ниже вместе с их значениями по умолчанию в Windows 98SE:
HKEY_CLASSES_ROOT AudioCD shell (по умолчанию) "Воспроизвести" HKEY_CLASSES_ROOT AudioCD shell play (по умолчанию) "& воспроизвести" HKEY_CLASSES_ROOT AudioCD shell play command (по умолчанию) "% SystemRoot% cdplayer.exe / play% 1" HKEY_CLASSES_ROOT DVD shell (по умолчанию) "Воспроизвести" HKEY_CLASSES_ROOT DVD shell play (по умолчанию) "& Воспроизвести" HKEY_CLASSES_ROOT DVD shell play command (по умолчанию) "% SystemRoot% system32 dvdplay.exe / play% 1"
Объемы
Автозапуск
Если файл с именем autorun.inf существует в корневая директория файловой системы, настройки в этом файле могут добавлять к параметрам, представленным пользователю, или влиять на представление содержимого при автозапуске. В Windows XP наличие этого файла может повлиять на ход процесса - AutoRun может приступить к выполнению приложения напрямую без вмешательства пользователя. В Windows Vista AutoRun не может таким образом обойти AutoPlay; он может только добавить к параметрам, представленным пользователю. В Обработка Inf В разделе статьи об автозапуске подробно описано, когда и когда запускается автозапуск.
Слой AutoRun изначально обращается к реестру Windows values, чтобы решить, следует ли инициировать действия для любого конкретного диска или типа диска. Если автозапуск был отключен для вновь обнаруженного тома, то в этот момент процесс останавливается, фактически отключая автозапуск для этого тома.
Обнюхивание контента
После завершения автозапуска запускается автозапуск, выполняя проверку содержимого тома. Это называется анализ контента. AutoPlay определяет, является ли том аудио-компакт-диском, DVD-диском с фильмом, чистым записываемым носителем (CD-R, CD-RW, DVD + R и т. Д.) Или общим томом, содержащим файлы.
В случае общего тома AutoPlay начинается с корневого каталога и выполняет поиск в файловой системе на четыре уровня каталогов ниже корневого каталога, чтобы найти типы файлов, которые попадают в определенные категории или «типы содержимого».
Если этот поиск занимает больше секунды или около того, в диалоговом окне отображается текущий процесс сканирования. Этот диалог легко спутать с операцией копирования в Проводнике; однако файлы не копируются или не перемещаются.
Типы контента
Что касается сниффинга AutoPlay, файлы делятся на три основные категории или «типы содержимого». Файлы вне этих категорий не представляют интереса:
Картинки | .jpg .gif .bmp .png ... |
---|---|
Музыка | .mp3 .wav .wma ... |
видео | .avi .mpg ... |
Контент считается «смешанным контентом», если файлы попадают в более чем одну из трех категорий.
Контент считается неизвестным, если процесс анализа контента не находит контента, который можно категоризировать. Это не означает, что файлы отсутствуют, просто отсутствуют файлы, относящиеся к одному или нескольким из трех вышеуказанных типов содержимого. В этом случае AutoPlay открывает окно проводника в корневом каталоге носителя, и здесь процесс завершается.
PerceivedType
Чтобы классифицировать файлы по трем типам содержимого, PerceivedType значение, связанное с различными расширениями файлов, используется для определения категории. PerceivedType может иметь значение «изображение», «аудио» или «видео», чтобы классифицировать файлы по типам контента «Изображения», «Музыка» или «Видео» соответственно. Существуют и другие типы PerceivedTypes, известные Windows (текстовые, сжатые, системные и прикладные), но они не имеют отношения к автозапуску.
Вся информация о типах файлов хранится в реестре под HKEY_CLASSES_ROOT. Ниже приводится информация реестра PerceivedType для видеофайлов .avi и музыкальных файлов .mp3:
HKEY_CLASSES_ROOT .avi (по умолчанию) "avifile" PerceivedType "video" HKEY_CLASSES_ROOT .mp3 (по умолчанию) "mp3file" PerceivedType "audio"
EventHandler (объем)
EventHandler - это заголовок таблицы, которая устанавливает связь между различными обработчиками и инициирующим событием. В случае событий на основе тома обработчики событий генерируются полностью внутри автозапуска без ссылки на реестр.
Обратите внимание, что изучение AutoPlayHandlers раздел реестра Windows показывает ContentTypeSniffers и ContentTypeHandlers ключи. Вне этих клавиш различные подключи и значения могут иметь отношение к автозапуску на основе громкости и даже управлять им. Однако, начиная с Windows XP SP2, эти ключи определены исключительно для использования в будущем и не доступны для AutoPlay.[7]
Один из следующих предопределенных обработчиков событий выбирается исключительно на основе решения, которое AutoPlay принимает внутренне после объемного исследования и анализа содержимого:
Тип медиа или контента | Обработчик события |
---|---|
Картинки | ShowPicturesOnArrival |
Музыкальные файлы | PlayMusicFilesOnArrival |
Видео файлы | PlayVideoFilesOnArrival |
Смешанный контент | MixedContentOnArrival |
Чистый CD-R / CD-RW | Обработка CDBurningOnArrival |
Музыкальный компакт-диск | ВоспроизвестиCDAudioOnArrival |
DVD фильм | ИгратьDVDMovieOnArrival |
Добавлено в Windows Vista | |
Фильмы Super VideoCD | PlaySuperVideoCDMovieOnArrival |
Видео CD фильмы | PlayVideoCDMovieOnArrival |
Autorun.inf указывает исполняемый файл | АвтозапускINFLegacyArrival[8] |
Не тома
Характеристики устройства
Поскольку Windows не может выполнять анализ содержимого на устройствах без объема, AutoPlay анализирует эти устройства по их характеристикам, а не по содержимому. Каждое новое обнаруженное устройство имеет идентификационную информацию, обычно хранящуюся в самом устройстве. Эта информация собирается счетчиками и используется для построения идентификационных строк, на которые Windows обращается при доступе к устройству и обращении к нему. Строка идентификации для конкретного устройства называется Идентификатор устройства.[9]
Чтобы однозначно идентифицировать каждый экземпляр каждого установленного устройства, Windows назначает ID экземпляра к каждому устройству. Этот идентификатор содержит информацию о местоположении или серийный номер, если он поддерживается.
Объединение идентификатора устройства с идентификатором экземпляра дает строку, которая однозначно идентифицирует отдельное устройство в системе. Это ID экземпляра устройства. Пример строки с устройства PCI:
- PCI VEN_1274 & DEV_1371 & SUBSYS_8030107B & REV_04 0 & 0E
Когда Windows обнаруживает новое устройство, она сохраняет экземпляры устройств в реестре из следующих источников:
- HKLM SYSTEM CurrentControlSet Enum
Диспетчер устройств Windows (расположен под значком «Система» на панели управления) покажет идентификатор экземпляра устройства для любого конкретного устройства. Получение свойств любого устройства, выбор вкладки «Подробности» в диалоговом окне «Свойства» и выбор «Идентификатор экземпляра устройства» в раскрывающемся списке позволит получить информацию.
Еще одна характеристика каждого устройства - это Класс интерфейса устройства.[10] Это определяет контракт интерфейса, в котором устройство соглашается поддерживать базовый набор Управление вводом / выводом вызовы, относящиеся к этому классу интерфейса устройства. Например, устройство, согласное поддерживать контракт интерфейса клавиатуры, должно, среди прочего, поддерживать вызов IOCTL_KEYBOARD_QUERY_ATTRIBUTES IOCTL. Каждый класс представлен в виде большого универсально уникального числа, называемого GUID.
Устройство может зарегистрировать множество GUID классов интерфейса устройства для себя, заключив контракт на поддержку различных соответствующих вызовов интерфейса. Наиболее распространенным GUID класса интерфейса, относящимся к устройствам хранения, является GUID класса интерфейса устройства тома, {53F5630D-B6BF-11D0-94F2-00A0C91EFB8B}.
GUID класса интерфейса устройства можно найти в реестре в разделе:
- HKLM SYSTEM CurrentControlSet Control DeviceClasses.
Обработчик устройства
Когда анализируется устройство без тома, AutoPlay ищет в нескольких местах реестра Обработчики устройств Вход. Это просто строка, которая в сочетании с другой информацией выбирает EventHandler (который помещает в таблицу обработчики). Записи DeviceHandlers обычно помещаются в реестр производителем устройства. Существуют также более широкие категории устройств, для которых предварительно назначены обработчики устройств, например, устройства видеокамеры.
Первое, что смотрит AutoPlay, находится под Параметры устройства ключ экземпляра устройства. Например:
- USB Vid_059b и Pid_0031 и REV_0100
это строка идентификации USB-устройства для USB-накопителя Iomega ZIP. В сочетании с серийным номером USB, скажем 059B003112010E93, это формирует идентификатор экземпляра устройства для устройства. Таким образом Клавиша параметров устройства находится по адресу:
HKLM ... Enum USB Vid_059b & Pid_0031 059B003112010E93 Значки параметров устройства "" NoMediaIcons "" Ярлык "" Обработчики устройств "ZipDeviceHandler"
Значение DeviceHandlers в этом случае - «ZipDeviceHandler». Здесь также могут присутствовать другие параметры устройства: Иконки может указать значок для представления устройства вместе с NoMediaIcons для представления устройства, когда на нем нет носителя. Этикетка указывает понятное имя для устройства.
Если в экземпляре устройства не найдена запись DeviceHandlers, AutoPlay проверяет наличие записи DeviceGroup, снова в экземпляре устройства. Это позволяет целому набору устройств совместно использовать параметры устройства.
HKLM ... Enum USB Vid_059b & Pid_0031 059B003112010E93 Параметры устройства Группа устройств "ZipDrive100"
Параметры этой группы устройств хранятся в:
- HKLM ... AutoPlayHandlers DeviceGroups группа устройств
Итак, для примера группы ZipDrive100:
HKLM ... AutoPlayHandlers DeviceGroups ZipDrive100 Icons "% SystemRoot% system32 shell32.dll, -230 0 0" Label "Zip Drive 100" DeviceHandlers "ZipDeviceHandler"
Наконец, AutoPlay выполняет поиск соответствующих GUID классов интерфейса устройства. Параметры классов устройств хранятся в:
- HKLM ... AutoPlayHandlers DeviceClasses {classguid}
Вот запись, которую приложение Microsoft Movie Maker регистрирует для всех без исключения видеокамер:
HKLM ... AutoPlayHandlers DeviceClasses {CC7BFB41-F175-11D1-A392-00E0291F3959} Метка DeviceHandlers "VideoCameraDeviceHandler" @C: Program Files Movie Maker wmm2res.dll, -63094 "Значки" C: WINDOWS system32 shell32.dll, -317 0 0 "
Смотрите также
- Программное обеспечение, обеспечивающее аналогичные функции в других средах
- gnome-volume-manager в ГНОМ
- Тунар (используя плагин thunar-volman[11]) в Xfce
Рекомендации
- ^ «Использование аппаратного автозапуска». Microsoft, MSDN. Получено 2019-11-20.
- ^ а б «Использование и настройка AutoPlay». Microsoft, MSDN. Получено 2019-11-20.
- ^ «Автозапуск в Windows XP». Microsoft, журнал MSDN. Ноябрь 2001. Получено 2019-11-20.
- ^ Как отключить функцию, которая позволяет автоматически запускать компакт-диски и аудио компакт-диски, Microsoft, База знаний
- ^ Как настроить программу, используемую для воспроизведения аудио компакт-дисков, Microsoft, База знаний
- ^ Как отключить (W95) AutoPlay, Microsoft, База знаний
- ^ Обработчики типов контекста, Usenet, microsoft.public.platformsdk.shell
- ^ Прыжки по островам на страже безопасности: заразительное очарование продавцов, Журнал TechNet
- ^ Строки идентификации устройства, Microsoft, MSDN
- ^ Классы интерфейса устройства, Microsoft, MSDN
- ^ "проекты: thunar-plugins: thunar-volman [Xfce Goodies]". goodies.xfce.org.
внешняя ссылка
- Автозапуск в Windows XP, MSDN Magazine, ноябрь 2001 г.
- Реализовать обработчик автозапуска, CodeProject