An up-coming feature in Silverlight 4, called COM Automation has been introduced that potential lets content in Silverlight and Silverlight applications work with documents in Microsoft's Office stored on a PC. Also, COM Automation could access other system capabilities like a USB security card reader.
COM is a Microsoft architecture, not found on the Mac, so this means Silverlight is beginning to be built by Microsoft to give Windows a leg up over the competition.
COM automation is a Windows-only feature, introducing differentiation between the Mac and Windows implementations. Since cross-platform Mac and Windows is a key Silverlight feature, it is curious that Microsoft has now decided to make it platform-specific in such an important respect. Microsoft Office and parts of the Windows API have a COM interface, so access to COM makes Silverlight a much more capable client.
Brian Goldfarb, director of product marketing, defended this decision. "[Mac and Windows Silverlight] are on a par in every other respect. It's important to give developers choice. We also want to have the option to light up the platform," he said.
Other Silverlight 4 features include printing support, clipboard support, a rich text control, bi-directional and right-to-left text, access to webcams and microphones, right-click and mouse wheel control, multi-touch support, and DRM for both online and offline media. Microsoft is also promising a significant performance boost thanks to better just-in-time compilation.
There are also major changes to Silverlight's out-of-browser functionality, a loose equivalent to Adobe Systems' AIR runtime for Flash. Even when fully sandboxed, which means having the same permissions that would apply to a browser-hosted Silverlight applet, out-of-browser applications get an HTML control, custom window settings, and the ability to fire pop-up notifications. There is also a new trusted mode, which requires user approval, and enables local file access, COM automation, and cross-domain networking access.
Goldfarb, fresh from Microsoft's recent Mix 2010 conference, last month, where the HTML 5 news was announced, told The Reg that Microsoft is "looking at other ways to extend Silverlight to other platforms". Microsoft is looking at features that are specific to those particular platforms and that could mean support in Silverlight for AppleScript or shell extensions.
"We are waiting for customers to give us some use cases," Goldfarb said.
Microsoft has supported Moonlight (Novell-sponsored project led by Miguel de Icaza. Moonlight spun up when Microsoft made it clear it didn't have the "resources" to target platforms other than Windows. Moonlight is now on version 2.0 but does not implement all features of the main Silverlight.) because it potentially seeds the market and creates interest in Silverlight. If Goldfarb is right, then it looks like Microsoft believes Silverlight on Mac can also play a part in this. While that will suit Microsoft's goals it should also mean that Silverlight on Mac avoids the kind of second-class status Office for Mac has endured.
Microsoft's Silverlight media player has, with version 4 due next month, gone from being closed source but able to work on other platforms - the Mac - to being increasingly tied to Windows.