Создать сборку только для метаданных AnyCPU из сборки C ++ / CLI - PullRequest
0 голосов
/ 20 ноября 2018

Есть ли способ взять существующую сборку .NET, скомпилированную с x86 или x64, и создать другую сборку с тем же API, но скомпилированную как AnyCPU?Новая сборка фактически никогда не будет выполнена;он будет использоваться только как ссылка на время компиляции.

Фон

У меня есть сборка .NET, написанная на C ++ / CLI.Я помещаю его в пакет nuget, используя папки runtimes и ref nuget для решения проблемы 32 и 64 бит.Обычно сборки в папке ref компилируются как AnyCPU, но это не вариант для сборок C ++.На данный момент у меня есть копия 32-битной версии в папке ref, но это вызывает предупреждение при включении в проект x64:

Произошло несоответствие между архитектурой процессора проектастроится "AMD64" и архитектура процессора ссылки "c: ... \ myassembly.dll" "x86".

Я понимаю, что это не вызовет никаких проблем во время выполнения, но яЯ хотел бы избавиться от предупреждения, если это возможно.Если бы это было написано на C # или VB, я мог бы использовать CorFlags, чтобы превратить его в сборку AnyCPU, но этот прием не работает со сборками C ++.Когда я устанавливаю флаг ILONLY в 32-битной сборке C ++, Visual Studio больше не может загружать сборку вообще.

Поэтому любой может подсказать, как создать подходящую версию этой сборки.для использования в качестве ссылки на время компиляции в пакете nuget?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...