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.