Dela via


Portera en befintlig Windows ML-app till NuGet-paketet (C++)

I den här handledningen tar vi en befintlig WinML-skrivbordsapplikation och portar den så att den använder det omdistribuerbara NuGet-paketet.

Förutsättningar

  • Ett WinML-program. Om du skapar ett nytt program kan du läsa Självstudie: Skapa ett Windows Machine Learning Desktop-program (C++)
  • Windows 8.1 eller senare
  • Visual Studio 2019 (eller Visual Studio 2017, version 15.7.4 eller senare)
  • Ladda ned CppWinRT NuGet-paketet

Lägg till NuGet-paketet i projektet

I Visual Studio-projektet för ditt befintliga program navigerar du till Solution Explorer och väljer Hantera NuGet-paket för Lösning. Välj Microsoft.AI.MachineLearning NuGet-paketet. Se till att du lägger till i rätt projekt och tryck på Installera.

Bygg sedan lösningen igen. C++/WinRT-verktygslådan parsar de nya huvudena och metadata från Microsoft.AI.MachineLearning NuGet-paketet, vilket undviker förvirring i nästa steg.

Ta med den nya rubriken

För bästa praxis bör du lägga till en kontrollflagga så att din app kan växla fram och tillbaka mellan att använda inbyggda Windows ML och NuGet-paketet.

#ifdef USE_WINML_NUGET
#include "winrt/Microsoft.AI.MachineLearning.h" 
#endif

Ändra namnområdet

Låt sedan Windows::AI::Machinelearning växla över till Microsoft::AI::MachineLearning namnrymd med hjälp av en kontrollflagga. Genom att göra den här ändringen använder koden automatiskt NuGet-paketet om tillämpligt.

#ifdef USE_WINML_NUGET 

Using namespace Microsoft::AI::MachineLearning 

#else 

Using namespace Windows::AI::MachineLearning 

#endif 

Ändra förprocessordefinitionerna

Högerklicka nu på projektet i Solution Explorer och välj Egenskaper. I fönstret Egenskaper väljer du sidan Preprocessor. Redigera Förprocessordefinitioneroch ändra dem till USE_WINML_NUGET:_DEBUG.

Spara byggkonfigurationer

Högerklicka på lösningen i Solution Explorer och välj Egenskaper. I fönstret Egenskaper väljer du Configuration Manager. Öppna den nedrullningsbara menyn för Active-lösningskonfiguration och välj <Ny...>. Ange namnet på den nya lösningskonfigurationen och kontrollera att Skapa nya projektkonfigurationer är markerat. Nu kan förprocessordefinitioner sparas i önskade byggkonfigurationer.

Bygg och kör

Ditt program använder nu WinML NuGet-paketet.