Как запрограммировать и зарегистрировать пользовательский CMM для Windows

Для исследования мне нужно запрограммировать пользовательский модуль управления цветом и использовать его из программы (в которой уже есть возможность выбрать CMM для использования) через систему цветов Windows.

CMM работает и дает желаемые результаты, теперь мне нужно создать DLL и зарегистрировать ее, чтобы окна нашли и использовали ее.

Мне удалось установить Adobe CMM и программно найти его с помощью подсказки из этого примера кода. (Я просто перечисляю ключ реестра, чтобы получить все CMM.)

Я также могу переключаться между Microsoft WCS CMM и Adobe CMM через SelectCMM()оба дают немного разные результаты в преобразованиях цвета.

Теперь мне нужно упаковать CMM в DLL с этим интерфейсом и зарегистрировать его.Вот где я борюсь.

Вопрос: Знаете ли вы документацию, справочную реализацию, пример кода или учебное пособие?

Мои конкретные проблемы:

  • Я не понимаю механизм подписей CMM (PDF) (с сайта ICC) и как они используются в Windows. Например, просто создав другую запись реестра с подписью 'EFI ' указывая на то же самое AdobeCMM.dll не работает - выбор "нового" CMM завершается неудачно с неизвестной ошибкой.
  • Для тестирования я хотел бы сначала реализовать переадресацию вызовов в Windows CMM (включая Icm.h в файле c), но я получаю конфликты, определяющие типы данных - нужно ли использовать пользовательские имена для типов, чтобы они не вступали в противоречие с определениями в Icm.h?
  • Как во всем мире я мог отладить это?
  • Кто-нибудь знает о реализации с открытым исходным кодом (или такой), я мог бы использовать в качестве ссылки?
  • Это относится даже к SO? Или кто-нибудь может указать мне на более подходящий форум? ( MSDN имеет мало или нет результатов по этой теме.)

0 ответов

Другие вопросы по тегам