Udostępnij za pośrednictwem


Szablon projektu biblioteki klas WRL

Jeśli używasz programu Visual Studio zapisać Biblioteka szablonów C++ środowiska wykonawczego systemu Windows (WRL) projektu, można znacznie uprościć Twoim zadaniem przez pobieranie szablonu projektu biblioteki klas w światowym laboratorium Referencyjnym.

[!UWAGA]

Jeśli musisz ręcznie zaktualizować ustawienia projektu dla istniejącego projektu, zobacz bibliotek DLL (C + +/ CX).

Pobierz szablon projektu światowym laboratorium Referencyjnym

Visual Studio nie zapewnia szablon dla WRL projektów.Aby pobrać szablon projektu, który tworzy bibliotekę podstawowe klasy dla Windows Store aplikacji z WRL.

Aby pobrać szablon projektu światowym laboratorium Referencyjnym

  1. Na pasku menu, kliknij Plik, Nowy projekt.

  2. W lewym okienku Nowy projekt okno dialogowe, wybierz Online, a następnie wybierz Szablony.

  3. W Szablony w trybie online Search polu w prawym górnym rogu, typ Biblioteka klas w światowym laboratorium Referencyjnym.Gdy szablon pojawi się w wynikach wyszukiwania, wybierz polecenie OK przycisk.

  4. W pobrać i zainstalować okno dialogowe, jeśli zgadzasz się do przyznawania pozwoleń na warunki, wybierz polecenie zainstalować przycisk.

  5. Po instaluje szablonu, należy utworzyć projekt, wybierając pliku, Nowy projekt, a następnie wybierając WRLClassLibrary szablonu.Projekt tworzy bibliotekę DLL.

Przykłady używające szablonu projektu

Odczyt Wskazówki: tworzenie podstawowego składnika środowiska wykonawczego systemu Windows za pomocą biblioteki WRL na przykład, który używa tego szablonu do tworzenia Środowisko wykonawcze systemu Windows składnika.

Szablon Projekt przedstawia

Szablon Projekt przedstawia:

  • plik .idl, który deklaruje atrybutów MIDL dla podstawowego interfejsu klasy jego implementacji.Oto przykład.

    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;
        }
    }
    
  • plik .cpp, który definiuje klasy implementacji.Oto przykład.

    #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 pomaga zarządzać globalnego odniesienie do wszystkich obiektów w module i deklaruje metody klasy podstawowej IUnknown i IInspectable interfejsów.InspectableClass implementuje makro IUnknown i IInspectable.ActivatableClass makro tworzy fabryki klasy, która tworzy wystąpienia klasy.

  • Eksportuje plik o nazwie module.cpp, która definiuje biblioteki DllMain, DllCanUnloadNow, DllGetActivationFactory, i DllGetClassObject.

Zobacz też

Koncepcje

Biblioteka szablonów języka C++ środowiska wykonawczego systemu Windows (WRL)