250 likes | 702 Views
PLAT-875T. Windows Runtime internals: understanding "Hello World". Matt Merry Program Manager Microsoft Corporation. Agenda. Detailed walkthrough of Hello World’s lifecycle Deep dive into the Windows Runtime. You’ll leave knowing how. The internals of your application works
E N D
PLAT-875T Windows Runtime internals: understanding "Hello World" Matt Merry Program Manager Microsoft Corporation
Agenda • Detailed walkthrough of Hello World’s lifecycle • Deep dive into the Windows Runtime You’ll leave knowing how • The internals of your application works • The internals of the Windows Runtime works
Windows 8 Metro style apps Desktop apps HTML JavaScript HTML / CSS XAML View JavaScript (Chakra) C C++ C# VB Model Controller C C++ C# VB WinRT APIs Devices & Printing Communication & Data Graphics & Media System Services .NET / SL Internet Explorer Win32 Application Model Windows Core OS Services Core
Tap Run! Install
demo Creating “Hello World”
Installation Install • <Applications> • <Application • Id=“HelloWorldAppId" • StartPage=“mystartpage.html"> • <VisualElements • DisplayName="Hello World" • Logo="images\logo.png" • Description="Hello_World" • ....
WinRTregistration catalogs Install Extension Catalog Class Catalog Extension 1 Runtime Class “A” Launch Contract Extension 2 Runtime Class “B” Search Contract Runtime Class “C” Extension 3
WinRT registration Install
Deployment pipeline Install Extension Catalog <Applications> <Application Id="App" StartPage="default.html"> <VisualElements DisplayName="Hello World" Logo="images\logo.png" Description="Hello_World" .... Application Manifest Deployment Engine Class Catalog
demo Running the app
Tapping a tile Tap • The OS stores the extension’s identification during install • The OS queries the extension catalog to find the extension • The OS activates the extension via WinRT
Finding the right extension Tap Extension Catalog Explorer.exe Query Activation System Class Catalog Investigate Activate
Activating the extension Tap Explorer.exe RPCSS Activation System Activate Application.exe Class Catalog DCOM Launch
demo App process bootstrapping
Running the app Run RPCSS Application.exe Register MTA main() { ... } Run Query Class Catalog
Completing app activation Run Explorer.exe Complete Activation Activation System Instance Activate App RPCSS Application.exe Instance App Callback App Code
Application object Run Application.exe MTA STA #1 Application Code Application Code Run Run STA #2 Activate Application Code Register
For more information Related sessions Documentation & articles • PLAT-874T - Lap around the Windows Runtime • APP-409T Fundamentals of Metro style apps: how and when your app will run • TOOL-531T Using the Windows Runtime from C# and Visual Basic • TOOL-532T Using the Windows Runtime from C++ • TOOL-533T Using the Windows Runtime from JavaScript • C++ Language extension summary • The Windows Runtime • Windows Runtime Design
thank you Feedback and questions http://forums.dev.windows.com Session feedbackhttp://bldw.in/SessionFeedback
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.