#winapi #mingw
#winapi #mingw
Вопрос:
У меня есть проект Win32, который я компилирую с помощью MinGW. Я хотел бы включить визуальные стили в этой программе, не требуя внешнего манифеста.
В MSVC это, по-видимому, можно сделать с помощью следующей прагмы:
#pragma comment(linker,""/manifestdependency:type='win32'
name='Microsoft.Windows.Common-Controls' version='6.0.0.0'
processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'"")
Однако GCC (MinGW) не поддерживает такую прагму. Есть ли у меня способ эмулировать поведение этой прагмы с помощью MinGW?
Комментарии:
1. Прагма MSVC просто приводит к добавлению компоновщиком ресурса манифеста. Если вы не используете манифест, вам потребуется использовать связывание во время выполнения и контекст активации для загрузки библиотеки dll comctl32. Я даже не знаю, возможно ли это. Это большая работа, даже если это так. Используйте уже манифест.
2. Просто напишите
.rc
файл, который ссылается на.manifest
файл, затем скомпилируйте.rc
файл в.res
файл с помощью любого нужного вам компилятора ресурсов, а затем попросите компоновщика MinGW связать этот.res
файл с вашим конечным исполняемым файлом вместе со скомпилированными объектными файлами вашего исходного кода. Это в основном то, что#pragma
делается за кулисами, просто без использования фактических.rc
.manifest
файлов or.
Ответ №1:
Что ж, похоже, что написание ресурса / манифеста — единственный путь вперед, поэтому я должен действовать таким образом.