Peter True Be Know (ptrue) wrote,
Peter True Be Know
ptrue

Categories:

Finale plug-in development

Поскольку начиная с версии 2007 в Finale перестали поддерживать текстовый формат файла ETF, в котором можно было покопаться и исправить ошибки программы, а сами свои ошибки они не исправляют уже десятилетиями, то пришлось взяться за шашки. То есть решиться на написание полноценного плагина, исправляющего ошибку с нумерацией текстовых блоков (я о ней подробно уже писал).

Одиннадцать лет назад на сайте Finale появился комплект разработчика плагинов (Plug-in development kit, PDK), и я даже начал с ним тогда разбираться, впрочем, весьма своеобразно: портировал с VC++ 6.0 на Delphi. В этом мне помогал один итальянец. Нам с ним удалось даже запустить тестовый плагин. После чего у итальянца родился ребёнок, ему стало не до того, а мне тоже стало не до того.

На днях я решил скачать последнюю версию PDK (как выразился Майкл Гуд — «latest and greatest»), однако обнаружил, что последняя версия на сайте датируется 2000 годом. То есть за те десять лет, что они каждый год выпускали новую версию программы, PDK они не меняли. А меняли они её ровно один раз — аккурат после того, как я портировал предыдущую версию на Делфи.

Впрочем, надежда на то, что этот PDK будет работать с последними Finale, оставалась: ведь TGTools, Patterson Beams и другие плагины (включая те, что входят в комплект поставки) работают как раз со всеми версиями программы с 2000 по 2010 без перекомпиляции.

(На официальном форуме Finale в декабре прошлого года подняли вопрос о новом PDK. И после некоторого времени обсуждения на форуме появился представитель фирмы и сказал, мол: "Мужики, не ссыте: скоро мы сделаем официальное заявление по поводу нового PDK". Мужики налили себе пива, насыпали чипсов и приготовились ждать официального сообщения. Прошёл месяц, два, три. Мужики выпили всё пиво, съели все чипсы и сново полезли на форум с репликами типа: "А не пропустили ли мы официального сообщения? А не выпустили ли уже новый PDK?" Ещё пару месяцев эти сообщения оставались без ответа, когда наконец (кажется, это было уже в марте нынешнего года) на форум снова пришёл представитель фирмы и заявил: "Мы обсудили вопрос нового PDK с разработчиками и официально заявляем, что нового PDK не будет".)

Ладно. В общем, оказалось всё не очень сложно. Дальше просто по пунктам сваливаю свой опыт по настройке среды, чтоб если через десять лет снова приспичит написать плагин, было где подсмотреть инструкцию.

1. Download and unpack "Finale 2000 Plugin Source Code Windows" from https://www.finalemusic.com/store/download.aspx?id=202

It includes PDK itself so you don't need to download it separately.

2. Install MS Visual C++ 6.0

3. File > Open Workspace... > ...\FINEXT\PlugIns.dsw
All sample plugins appear in left pane.

4. First problem: when clicking on plugin name (let's take AutoBrln) in ResouceView it cannot find included appinfo.h

Solution: Tools > Options > Directories. Add new: ...\FINEXT\FINEDK\source and ...\FINEXT\FINEDK\source\win

5. Go to FileView, right click on "AutoBrln files" > Build.
Second problem: cannot find findemo.lib

Solution: Build > Set Active Configuration... > AutoBrln - Win32 Release.

6. After successful build result could be found in ...\EXE\NCP\release\plug-ins\AUTOBR32.fxt
Just copy this file to c:\Program Files\Finale 2009\Plug-ins\My Favorite Plug-ins\

It works!
Tags: finale, pdk, visual c++
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 1 comment