Native Extensions further to blur the boundary between Silverlight and WPF
Designed for use with “out-of-browser” instances of Silverlight, it uses COM automation to expose features specific to Windows 7. The major feature areas include Message Interception, Sensor API, H.264 video encoding, taskbar extensions, Speech API, and access to portable devices.
- Message Interception: Allow applications to intercept Window messages sent to the containing window
- Sensor API: Provide full access to the Windows 7 Sensor API.
- Local Encoding: Allow applications to capture webcam audio/video input into a local H.264/AAC-LC encoded media file. Also allow capturing of application user interface activity as video with audio.
- Taskbar Access: Allow applications to integrate various Windows 7 taskbar features like taskbar button overlays, jump lists, taskbar button progress notifications etc.
- Speech API: Allow applications to use Windows 7 Speech-to-Text and Text-to-Speech capabilities
- Portable Devices: Allow applications to enumerate content on connected devices like music players, digital cameras etc.
According to Microsoft “a large majority of the Windows platform API’s today cannot be accessed from Silverlight this way. Some do support COM, but do not support automation; while the others are only accessible through a native language like C or C++.” While this will be less of a problem with Silverlight 5, which will get p/invoke capabilities, most .NET developers strongly dislike making unmanaged calls. In the meantime Native Extensions 2.0 for Microsoft Silverlight provides the necessary wrappers.
Native Extensions need to be installed on the client machine. This can be ahead of time or from within the application using Installer.CheckNESLInstalled and Installer.InstallNESL. The downside of the latter is that you have to include the NESLSetup.msi package in your application.
Educational Content
Concurrency in Clojure
Stuart Halloway May 17, 2013
Confessions of an Agile Addict
Ole Friis Østergaard May 16, 2013
Web Development: You're Doing It Wrong
Stefan Tilkov May 16, 2013
Programming The Feynman Way
Ben Evans May 15, 2013





Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think