Webinar - Maximizing The Capabilities of Internet Explorer For Embedded in Windows Embedded Compact 7
Webinar - Maximizing The Capabilities of Internet Explorer For Embedded in Windows Embedded Compact 7
Webinar - Maximizing The Capabilities of Internet Explorer For Embedded in Windows Embedded Compact 7
• Author
– Programming Embedded Windows CE
• Fourth Edition
Agenda
• Internet Explorer for Embedded Basics
• Gesture support
– Pinch to zoom
– Swipe to pan
Internet Explorer for Embedded
• Extensive performance work on page display
– Quicker rendering
– Quick gesture response
– Significantly faster JScript engine
– Extension DLLs
• Help with performance and how controls are rendered
User Agent String
• In WEC 7 User agent string is set
– "Platform"="Windows Phone OS 7.0; Trident/3.1; IEMobile/7.0“
• Restrictions on the
functionality of IE
• Enable in registry
– [HKCU]\Software\Microsoft\InternetExplorer\Gesture
• ICSRenderMethod Set to 1 to use plug in, 0 for GDI
• ICSRenderPlugin Set to name of plug in DLL
– IcsRendererDDraw.dll
– IcsRendererOpenGL.dll
• Supports
– Autocomplete text in the navigation edit box
– Back / Forward navigation
– Favorites
– Two user interfaces
• Standard UI
• “Pocket IE” UI
IE 7 with Silverlight
• IE browser with XAML-based chrome
– XAML driven UI
– Loads IE browser window and communicates via COM
• Supports
– Back Forward navigation
– Favorites
– Multiple screens using ‘thumbnails’
– Zoom
Learning from IE 7 with Silverlight
• Frankly, a better demonstration of Silverlight than using IE
– In all the examples, each browser window gets its own thread
• Initializing COM
– The browser is a COM object
Things a Hosting App Must Do
• Declare a series of GUIDs
– There are a series of GUIDs that are not defined in the standard
include files with the SDK. These can be found in the examples
DEFINE_GUID(CLSID_WebBrowser,
DEFINE_GUID(IID_IWebBrowser,
DEFINE_GUID(IID_IWebBrowser2,
DEFINE_GUID(DIID_DWebBrowserEvents,
DEFINE_GUID(DIID_DWebBrowserEvents2,
DEFINE_GUID(IID_IWebBrowserApp,
Fielding Events
• All examples show browser window as C++ class derived from
a set of classes
– IOleContainer,
– IOleClientSite,
– IOleInPlaceSite,
– IServiceProvider,
– DWebBrowserEvents2,
– IDocHostUIHandler,
– IDocHostShowUI,
– IHTMLOMWindowServices
• Implementation very basic
Zoom
• There are two “zooms”
• Tune IE
– User Agent string
– Security settings
– Dialog box interception
Doug Boling
Boling Consulting Inc.
www.bolingconsulting.com
dboling @ bolingconsulting.com
©©
2011
2011Microsoft
Microsoft Corporation.
Corporation. AllAll rights
rights reserved.
reserved. ThisThis presentation
presentation is for informational
is for informational purposespurposes only.makes
only. Microsoft Microsoft makes noexpress
no warranties, warranties, express
or implied, or summary.
in this implied, in
this summary.