Я хочу настроить следующие проекты (примерно):
- APP: приложение UWP C #
- LIB: проект CppWinRT для создания API C ++ / WinRT с использованием CORE
- CORE: проект C ++ / CX, который использует расширение среды выполнения Windows (написано со стандартом C ++ 14)
Еще одна деталь CORE требует Требуется расширение среды выполнения Windows: ДА на уровне проекта, а также отдельные файлы, использующие расширение среды выполнения Windows
Я не могу преобразовать CORE в C ++ / WinRT, поскольку для этого требуется соответствие стандарту C ++ 17, которыйбудет слишком много усилий для меня.
Я могу сохранить LIB , поскольку использует расширение среды выполнения Windows ДА / НЕТ в обе стороны.
проблема здесь
сохранение LIB как использует расширение среды выполнения Windows: НЕТ Я получаю следующую ошибку:
Error LNK2005 __crtWinrtInitType already defined in MSVCRTD.lib(app_appinit.obj) RuntimeComponent1 C:\Users\arpsingh\source\repos\WinrtApp\RuntimeComponent1\vccorlibd.lib(init.obj)
Error LNK2038 mismatch detected for 'vccorlib_lib_should_be_specified_before_msvcrt_lib_to_linker': value '1' doesn't match value '0' in MSVCRTD.lib(app_appinit.obj) RuntimeComponent1 C:\Users\arpsingh\source\repos\WinrtApp\RuntimeComponent1\vccorlibd.lib(init.obj)
сохранение LIB как использует расширение среды выполнения Windows: ДА Любые API, написанные на LIB недоступны в APP
Пример репозитория git для всего этого кода https://github.com/arpit92k/WinrtApp