Knihovna šablon C++ prostředí Windows Runtime (WRL)
Knihovna šablon C++ prostředí Windows Runtime (WRL) Je knihovna šablony, která umožňuje nižší úrovně, vytvářet a používat Windows Runtime komponenty.
Výhody
WRL Vám umožní snadněji implementovat a spotřebovat komponenty modelu COM (Component Object).Poskytuje techniky domácnosti jako počítání odkazů můžete spravovat životnosti objektů a testování HRESULT hodnoty k určení, zda operace proběhla úspěšně, nebo se nezdařilo.Chcete-li úspěšně použít WRL, je třeba pečlivě dodržovat tato pravidla a postupy.
rozšíření komponent v jazyce Visual C++ (C++/CX) Je vysoké úrovně jazyka založeného na způsob použití Windows Runtime komponenty.Oba WRL a C++/CX psaní kódu pro zjednodušení Windows Runtime automaticky provedením úkolů domácnosti ve vašem zastoupení.
WRL a C++/CX poskytují různé výhody.Zde jsou některé důvody, které chcete použít WRL namísto C++/CX:
WRLPřidá málo abstrakce nad Windows Runtime aplikace binární rozhraní (ABI), což vám dává možnost ovládat základní kód lépe vytvořit nebo spotřebovával Windows Runtime rozhraní API.
C++/CXpředstavuje COM HRESULT hodnoty jako výjimky.Jestliže jste zděděné základ kódu, který používá COM, nebo která nepoužívá výjimky, může se stát, že WRL je přirozenější způsob práce s Windows Runtime protože není nutné používat výjimky.
[!POZNÁMKA]
WRL Používá HRESULT hodnoty a nevyvolá výjimky.Kromě toho WRL používá inteligentní ukazatele a vzorek RAII k zajištění objekty jsou v případě, že kód vaší aplikace vyvolá výjimku zničeno správně.Další informace o chytré ukazatele a RAII, viz Inteligentní ukazatelů (Příručka programování moderních C++) a Vlastní zdroje objekty (RAII).
Účel a návrh WRL je podnítil tím, ATL Active Template Library (), což je sada šablonových C++ tříd, které zjednodušují programování COM objektů.Protože WRL používá standardní C++ zalomení Windows Runtime, snadněji port a pracovat s mnoha existující COM komponenty napsané v ATL na Windows Runtime.Pokud již znáte knihovny ATL, může se stát, že WRL programování je snadnější.
Začínáme
Zde jsou některé prostředky, které mohou pomoci při získání práce s WRL ihned.
Knihovny Runtime pro systém Windows (WRL)
V tomto videu Channel 9 dozvědět více o tom, jak WRL vám pomůže psát Windows Store apps a jak vytvářet a zpracovávat Windows Runtime komponenty.Postupy: Aktivace a používání komponent prostředí Windows Runtime s použitím knihovny WRL
Ukazuje, jak použít WRL inicializace Windows Runtime a aktivovat a používat Windows Runtime komponenty.Postupy: Dokončení asynchronních operací s použitím knihovny WRL
Ukazuje, jak použít WRL ke spuštění asynchronních operací a provedení práce, po dokončení operace.Postupy: Zpracování událostí s použitím knihovny WRL
Ukazuje, jak použít WRL Chcete-li se přihlásit k odběru a zpracování událostí, které Windows Runtime objektu.Postup: Vytvoření základní komponenty prostředí Windows Runtime s použitím knihovny WRL
Ukazuje, jak použít WRL Chcete-li vytvořit základní Windows Runtime součást, která sečte dvě čísla.Také ukazuje, jak vyvolat události a použití komponenty z Windows Store aplikace, která používá jazyk JavaScript.Postupy: Vytvoření aplikace pro Windows Store s použitím knihovny WRL a platformy Media Foundation
Informace o vytváření Windows Store aplikace, která používá Microsoft Media Foundation.Postupy: Vytvoření klasické komponenty COM s použitím knihovny WRL
Ukazuje, jak použít WRL Chcete-li vytvořit základní komponenty modelu COM a základní způsob, jak registrovat a využívat komponenty modelu COM z pracovní plochy aplikace.Postupy: Přímé vytváření instancí komponent knihovny WRL
Naučte se používat Microsoft::WRL::Make a Microsoft::WRL::Details::MakeAndInitialize funkce k vytvoření instance komponenty z modulu, který jej definuje.Názorný postup: Připojení pomocí úlohy a požadavek HTTP XML (IXHR2)
Ukazuje, jak použít IXMLHTTPRequest2 a IXMLHTTPRequest2Callback rozhraní spolu s úkoly k odesílání požadavků HTTP GET a POST na webovou službu v Windows Store aplikace.Bingu Liuovi map cesty optimalizace vzorku
Používá HttpRequest třídou, která je definována v Názorný postup: Připojení pomocí úlohy a požadavek HTTP XML (IXHR2) v souvislosti s úplnou Windows Store aplikace.Hybridní app DLL serveru vytváření vzorku
Demonstruje použití WRL deklarovat a implementovat rozhraní a práce s vlastnosti, metody a události.Ukázka hry DirectX mramor bludiště
Demonstruje použití WRL ke správě životnost komponent modelu COM jako rozhraní DirectX a platformu Media Foundation v souvislosti s kompletní 3D hry.Odeslání oznámení oznámení ze vzorku plochy apps
Demonstruje použití WRL pro práci s oznámení oznámení z pracovní plochy aplikace.
WRLVe srovnání s knihovny ATL
WRLprotože ve kterém můžete vytvořit malý, rychlé objekty modelu COM se podobá (Active Template LIBARY).WRLa ATL také sdílet pojmy, jako je například definice objektů v modulech, explicitní registrace rozhraní a otevřete vytváření objektů pomocí mechanizmu.Je možné, že s WRL Pokud ovládáte knihovny ATL.
WRLpodporuje funkci modelu COM, který je vyžadován pro Windows Store apps.Proto se liší od knihovny ATL protože vynechává přímou podporu modelu COM funkce, jako je například:
agregace
Burzovní implementace
duální rozhraní (IDispatch)
Standardní čítač rozhraní
spojovací body
odtrhnout rozhraní
Vložení OLE
ovládací prvky ActiveX.
COM +
Základní pojmy
WRLobsahuje typy, které představují několik základních pojmů.Následující části popisují tyto typy.
ComPtr
ComPtr je inteligentní ukazatel typ, který představuje rozhraní, který je určený parametrem šablony.Použití ComPtr pro deklarování proměnné, který má přístup k členům objekt, který je odvozen z rozhraní.ComPtrautomaticky udržuje počet odkazů pro základní ukazatele rozhraní a rozhraní uvolní, pokud je počet odkazů na nulu.
RuntimeClass
RuntimeClass představuje instance třídy, která dědí sadu určeného rozhraní.A RuntimeClass objekt může poskytovat podporu pro jednu nebo více kombinací Windows Runtime rozhraní modelu COM nebo Slabý odkaz na komponentu.
Modul
Modul představuje kolekci souvisejících objektů.A Module objekt spravuje třídy továrny, které vytvářejí objekty a registrace, která umožňuje aplikacím použít objekt.
Zpětné volání
Zpětného volání funkce vytvoří objekt, jehož členská funkce je obslužnou rutinu události (metodu zpětného volání).Použití Callback funkce asynchronní operace zápisu.
Atribut EventSource
Atribut EventSource slouží ke správě delegáta obslužné rutiny událostí.Použít WRL implementovat delegáta a použít EventSource přidat, odebrat a vyvolat delegátů.
AsyncBase
AsyncBase poskytuje virtuální metody, které představují Windows Runtime modelu asynchronního programování.Přepište členy této třídy k vytvoření vlastní třídy, které lze spustit, zastavit nebo kontrolovat průběh asynchronní operace.
FtmBase
FtmBase představuje objekt free-threaded Marshaller.FtmBasevytvoří tabulku globální rozhraní (GIT) a pomáhá spravovat zařazování a proxy objekty.
WeakRef
WeakRef je typ smart ukazatel, který představuje Slabý odkaz, která odkazuje na objekt, který může nebo nemusí být přístupné.A WeakRef objektu mohou být využívány pouze Windows Runtimea nikoli podle klasického modelu COM.
A WeakRef objekt obvykle představuje objekt, jejíž existence je řízena vnější vlákno nebo aplikace.Například WeakRef objekt můžete odkazovat na objekt souboru.Pokud je soubor otevřen, WeakRef je platný a přístupný odkazovaný soubor.Ale v případě, že je daný soubor zavřený, WeakRef je neplatný a soubor není přístupný.
Příbuzná témata
Popisuje, jak získat přístup k šabloně projektu knihovny tříd WRL.Tato šablona umožňuje zjednodušit úlohu pomocí sady Visual Studio k vytvoření Windows Runtime komponenty. |
|
Zvýrazní primární WRL typů, funkce a makra. |
|
Obsahuje informace o odkazech WRL. |
|
Stručná referenční příručka (za běhu systému Windows a aplikace Visual C++) |
Stručně popisuje C++/CX funkce, které podporují Windows Runtime. |
Pomocí součásti Runtime v systému Windows v aplikaci Visual C++ |
Ukazuje, jak použít C++/CX Chcete-li vytvořit základní Windows Runtime komponenty. |