Автоматизированная альтернатива пакетной сборке Visual Studio?

У меня есть управляемая библиотека, в которую встроена собственная библиотека, в которой есть двоичные файлы как для 32-разрядных, так и для 64-разрядных версий.

В настоящее время я должен сделать следующее:

Сначала создайте 32-битные и 64-битные сборки собственной библиотеки, используя Пакетная сборка.

Во-вторых, создайте управляемую библиотеку.

Управляемая библиотека ссылается на двоичные файлы, которые затем загружаются с помощью NativeLibrary.Load во время выполнения.

Все это заканчивается как пакет NuGet, готовый к использованию.

Вопрос:

Как я могу заставить этот этап пакетной сборки выполняться автоматически, а не вручную?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
61
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Я не верю, что у VS есть возможность напрямую зависеть от проекта, зависящего от нескольких сборок платформы другого проекта. Можно сделать так, чтобы проект x64 зависел от сборки x86, но, насколько мне известно, он не зависит от сборок x86 и x64 одного проекта.

Однако вы можете добавить дубликат проекта. То есть ваша зависимость должна полагаться на сборку x86 для foo_x86 и x64 для foo_x64, при этом foo_x86 и foo_x64 фактически строятся из одних и тех же файлов. Возможно даже, что foo-_x86 и foo_x64 фактически используют один и тот же файл проекта. В последнем я просто не уверен.

Ответ принят как подходящий

Использование <MSBuild Projects=.../> просто работает, ключ к тому, чтобы заставить это работать:

  • получить проекты для компиляции через командную строку, чтобы выяснить недостающие параметры
    • не так просто, как кажется, поскольку Visual Studio многое делает под капотом
  • наконец, передайте необходимые параметры в <MsBuild>, например. OutDir например

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