Šablona projektu knihovny tříd WRL
Používáte-li aplikaci Visual Studio k zápisu Knihovna šablon C++ prostředí Windows Runtime (WRL) projektu, můžete výrazně zjednodušit úlohu stažením šablony projektu knihovny tříd WRL.
[!POZNÁMKA]
Máte-li ručně aktualizovat nastavení projektu pro existující projekt, viz knihovny DLL (C + +/ CX).
Stažení šablony projektu WRL
Visual Studio neobsahuje šablonu pro WRL projektů.Chcete-li stáhnout šablony projektu, který vytváří knihovny základní třídy pro Windows Store apps s WRL.
Chcete-li stáhnout šablony projektu WRL
Na panelu nabídky vyberte možnosti Soubor, Nový projekt.
V levém podokně Nový projekt dialogové okno, vyberte Onlinea potom vyberte šablony.
V Hledat online šablony pole v pravém horním rohu, typ Knihovna tříd WRL.Je-li šablona se zobrazí ve výsledcích hledání, zvolte OK tlačítko.
V Stáhnout a nainstalovat dialogové okno, pokud souhlasíte s licenční podmínky, zvolte nainstalovat tlačítko.
Po instalaci šablony vytvořit projekt pomocí příkazu soubor, Nový projekta potom klepněte na tlačítko WRLClassLibrary šablony.Projekt vytvoří knihovnu DLL.
Příklady, které používají šablonu projektu
Čtení Postup: Vytvoření základní komponenty prostředí Windows Runtime s použitím knihovny WRL příklad, který používá tuto šablonu k vytvoření prostředí Windows Runtime komponenty.
Poskytuje šablony projektu
Šablona projektu obsahuje:
souboru .idl, který deklaruje jeho implementaci třídy atributů MIDL pro základní rozhraní.Zde je příklad.
import "inspectable.idl"; import "Windows.Foundation.idl"; #define COMPONENT_VERSION 1.0 namespace WRLClassLibrary { interface IWinRTClass; runtimeclass WinRTClass; [uuid(89656677-8679-477c-aff1-f724c64b70f3), version(COMPONENT_VERSION), exclusiveto(WinRTClass)] interface IWinRTClass : IInspectable { } [version(COMPONENT_VERSION), activatable(COMPONENT_VERSION)] runtimeclass WinRTClass { [default] interface IWinRTClass; } }
Soubor CPP, který definuje implementaci třídy.Zde je příklad.
#include "pch.h" #include "WRLClassLibrary_h.h" #include <wrl.h> using namespace Microsoft::WRL; using namespace Windows::Foundation; namespace ABI { namespace WRLClassLibrary { class WinRTClass: public RuntimeClass<IWinRTClass> { InspectableClass(L"WRLClassLibrary.WinRTClass", BaseTrust) public: WinRTClass() { } }; ActivatableClass(WinRTClass); } }
RuntimeClass základní třída pomáhá spravovat globální reference všechny objekty v modulu a deklaruje metody IUnknown a IInspectable rozhraní.InspectableClass implementuje makro IUnknown a IInspectable.ActivatableClass makro vytvoří třídu factory, která vytvoří instanci třídy.
Exportuje soubor s názvem module.cpp, která definuje knihovny DllMain, DllCanUnloadNow, DllGetActivationFactory, a DllGetClassObject.