DVD Switcher

Автор: black от 20-12-2013

DVD Switcher

Платформа: Mac OS

Описание:

Как исправить работу программы DVD Player после установки OptiBay в свой Mac.

Установка дополнительного накопителя в свой MacBook, MacBook Pro, Mac mini или iMac стало «модной» тенденцией в последние несколько лет. Почему бы и нет? — Накопители на флеш-памяти (SSD) стали довольно доступной «роскошью», а переходники OptiBay массово появились на местных рынках. Всё это позволило большому числу желающих доволно удачно проапгрейдить свои «маки». Однако, как это часто бывает, не обошлось без «ложки дёгтя в бочке мёда»: операционная система Mac OS X не была готова к такому самоволию со стороны пользователей, и это отразилось в некретических и небольших глюках. Например, заменив встроенный DVD-привод на OptiBay с дополнительным накопителем, утилита Ассистент Boot Camp начинает «ругаться» на отсутствие DVD и отказывается работать. Для того, чтоб Ассистента Boot Camp заставить работать, нужно немного модифицировать его внутренности.

Такая же беда происходит и со стандартной программой DVD-плеер, которая наотрез отказывается определять внешний USB DVD-драйв и ругается вот такой ошибкой:

 

Произошла ошибка инициализации

Не найден доступный дисковод DVD. [-70012]

 

На английском выглядит так:

 

There was an initialization error

A valid DVD drive could not not be found. [-70012]

 

Если вы столкнулись с такой же ошибкой — можно воспользоваться альтернативными программами, позволяющими проигрывать DVD и которым наплевать та то, внутренний или внешний привод используется. Но приятнее всё-же, когда встроенный функционал работает как положенно. В этой коротенькой заметке я расскажу, как исправить программу DVD-плеер, чтоб она начала прекрасно работать с внешним DVD-приводом.

На hardmac.com я нашёл давняшнее упоминание, что для работы программы DVD-плеер с внешним DVD-приводом нужно при помощи HEX-редактора пропатчить бинарный исполняемый модуль в фреймворке DVDPlayback.framework. Так и было сделано: при помощи программы HexEdit я заменил все значения «Internal» на «External» в файле DVDPlayback. После подключил свой внешний DVD-привод, запустил программу DVD-плеер… Вуаля! Всё заработало! Далее, руководствуясь налаженному методу автоматического патчинга бинариков, соорудил вот такую конструкцию:

sudo perl -pi -e 's|\x49\x6E\x74\x65\x72\x6E\x61\x6C|\x45\x78\x74\x65\x72\x6E\x61\x6C|g' \

/System/Library/Frameworks/DVDPlayback.framework/Versions/A/DVDPlayback

Выполнение данной команды при помощи Терминала позволяет автоматически пропатчить DVDPlayback.framework, и всё начинает работать как нужно. Для возврата к оригиналу нужно выполнить обратный патчинг:

 

sudo perl -pi -e 's|\x45\x78\x74\x65\x72\x6E\x61\x6C|\x49\x6E\x74\x65\x72\x6E\x61\x6C|g' \

/System/Library/Frameworks/DVDPlayback.framework/Versions/A/DVDPlayback

Но на этом я решил не останавливаться, и сделал небольшой AppleScript-апплет, позволяющий делать то же самое нажатием всего одной кнопки. Загружаем и распаковываем в удобное место этот архив, запускаем DVD Switcher — так я назвал свой апплет, и нажимаем на нужную кнопку:

 

Выбор DVD-привода в программе DVD Switcher На запрос ввода пароля администратора системы не стесняемся, вводим его (зловредов я никаких не встраивал). Ну вот, собственно, и всё. Пробуйте теперь запустить DVD-плеер.

 

P.S.: Программка локализирована на три языка: русский, украинский и английский, работа её испытана на OS X Mountain Lion (должна работать на всех предыдущих версиях Mac OS X). Кто захочет добавить свой язык — не проблема: в ресурсах апплета по адресу: DVD Switcher.app/Contents/Resources/Scripts/ Находится некомпелированный AppleScript main.scpt. Его можно править на ваше усмотрение добавив ещё какую-либо локализацию или свои модификации. Дополнительная локализация добавляется вот такой конструкцией:

 

else if syslocale = "en" then --локализация

set Title to "DVD Switcher" --заголовок окна

set DialodText to "Which DVD drive do you want to use?" --текст диалогового окна

set Button1 to "Internal" --кнопка выбора внутреннего DVD

set Button2 to "External" --кнопка выбора внешнего DVD

set Button3 to "Cancel" --кнопка отмены

 


Скачать DVD Switcher

Скачать Файл dvd-switcher.zip Скачать программу 264 Кб

Скриншоты к DVD Switcher

Скриншоты к DVD Switcher

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.