Silverlight 4 now has support for installing out-of-browser application silently. If you are new to Silverlight Out-of-Browser application development, you can read the complete guide in "How can you implement the Silverlight 3 Out Of Browser feature?" Also have a look into the following article to get the basic understanding of Silverlight 4 Out Of Browser feature "Silverlight 4: How can I create customized OOB Window?"
Hope, you read my previous articles on the Out of Browser application development and have confidence building applications. In those articles, you have seen that I wrote code for installing the OOB application from the browser window. Now imagine some scenarios where you want to install the Silverlight application (XAP) using your Installer silently without the user interaction. How can you do that? Silverlight 4 now came up with that feature for you. In this article, I will describe it and after reading it, you will be able to install your Silverlight OOB Application (XAP) silently in your local drive and run it from the desktop or startmenu without opening the browser.
How Silverlight Out-of-Browser Application Works?
Before going to implement the feature, we will first discuss how the Silverlight OOB application works. When you install Silverlight plug-in, it also installs a .exe file named "sllauncher.exe" which you can find in your "Program Files\Microsoft Silverlight\" directory. This EXE file now has the capability to install your Silverlight OOB application silently without opening the browser window. If you have already installed your OOB application, it will create a shortcut to launch the application from desktop or start menu. Right click on the shortcut & go to its properties. You will notice that the target location is set to "Microsoft Silverlight" and the target is set to something similar to the following line:
"C:\Program Files\Microsoft Silverlight\sllauncher.exe" 744317312.localhost
That is responsible for launching the XAP file as your Out-of-Browser application.
Script for installing Out-of-Browser application silently
Let's come to write some scripts to install your XAP silently as out of browser Silverlight application. Hope, you have a Silverlight application configured as out of browser. Build the application & you will get the output file (.XAP) in the
ClientBin of the web application. Copy this file to your local drive in a specific folder (say, C:\MySilverlightApps\). I am using my Chromeless Window Demo Application and hence the complete path of the XAP is: "C:\MySilverlightApps\Silverlight4.OOB.ChromelessWindow.Demo.xap".
Now open your Notepad and write the following code in a single line:
"C:\Program Files\Microsoft Silverlight\sllauncher.exe"
Silverlight4.OOB.ChromelessWindow.Demo.xap /shortcut:desktop+startmenu /overwrite
Overview of sllauncher.exe Parameters
You have to pass the location of your XAP file as a parameter value to the "
You can specify the URL for future update location of the application by setting the "
/origin" flag. When you call the
CheckAndDownloadUpdateAsync() method from code, it will try to get the update from the specified location.
You can specify the shortcut location of the application by setting the value to the "
/shortcut" flag. If you just set desktop or startmenu as the value to the flag, it will create the shortcut in desktop or startmenu depending on the parameter you set. If you use "desktop+startmenu" as the value to the parameter, it will install it both in the desktop and startmenu of your operating system.
You can use these feature to install Silverlight OOB Application from CD/DVD to your user's PC without any user interaction to open the application using browser window and manually install to their PC.
- 22nd April, 2010: Initial post
Kunal Chowdhury is a Microsoft MVP (Most Valuable Professional) in Silverlight Technology, a Codeproject MVP & Mentor, DZone MVB (Most Valuable Blogger), Speaker in various Microsoft events, Author, passionate Blogger and a Software Engineer by profession.
He is currently working as a Software Engineer II in an MNC located at Pune, India. He has a very good skill over XAML, C#, Silverlight and WPF. He has a good working experience in Windows 7 application (including Multi-touch) development too.
He posts his findings in his technical blog. He also writes for SilverlightShow and Codeproject portal. Many of his articles were highlighted as "Article of the Day" in Microsoft sites.
He also has another website called Silverlight-Zone.com where he posts article links on Silverlight, Windows Phone 7 and XNA accumulated from various web sites to help the community grow on specified technologies.
You can reach him in his Blog : http://www.kunal-chowdhury.com
He is also available in Twitter : http://twitter.com/kunal2383