Я добавил пакет Nuget / Coapp для Expat (https://github.com/coapp-packages/expat) к моему проекту Visual C ++ 2012. В проекте используется кодировка Unicode, и я наконец-то нашел, где я настраиваю правила сборки Expat (Свойства проекта> «Свойства конфигурации»> «Пакеты со ссылками»> «Экспат»). Я установил там свойство «UTFwidth» на utf16. Это работает, т.е. XML_Char
становится wchar_t
во время компиляции. Однако кажется, что этот параметр не влияет на распространяемый пакет, содержащий библиотеки DLL, поскольку он копирует «libexpat.dll» вместо «libexpatw.dll» в выходной каталог. Если я вручную скопирую правильную DLL, моя программа будет запущена, как и ожидалось.
Как исправить процесс сборки, чтобы скопировать правильную версию DLL?
Задача ещё не решена.
Других решений пока нет …