I used Silverlight technology in my Electronic School web site. With the help of the great MinoPlayer and silver light streaming services, I was able to provide visual lessons to my students. My site was using Silverlight 2 beta 2 for not less than three months, most of my students downloaded that beta version and all things went fine!
Recently, when Microsoft came up with the final version of Silverlight 2, I was
facing problems upgrading to that final version. I did not want to interrupt my
students upgrading to the latest version and, in the same time, I was afraid if
they upgrade to the newer version, for instance when using a website that requires
the final version, my web site would no longer provide them with the video lessons!.
MinoPlayer’s author has provided a new version of his product that is compatible
with the final release of Silverlight 2, but it can not work with Silverlight 2
beta 2. The old version of MinoPlayer can not work with the final release of Silverlight
2!
Also I wanted my new students to be able to download and use the final release of
Silverlight.
I was working hard finding a solution that can handle the following scenarios:
After some experimentation, I came up with very simple, and yet efficient, solution
of Silverlight versioning conflicts.
In the server side I put the both versions of MinoPlayer. MinoPlayer_Ver1_2.xap
(the old version) and I renamed the new version as MinoPlayer_Ver1_2Final.xap
and I put them in a same directory.
The remainder of the magic was implemented in the client side:
I provided two nested Silverlight objects. The outer object is
pointing to Silverlight 2 final release and the source is pointing to the
new version of MinoPlayer:
<object data="data:application/x-silverlight," type=" application/x-silverlight-2" width="90%" height="330"> <param name="source" value="MinoPlayer_Ver1_2Final.xap">
<a href="http://go.microsoft.com/fwlink/?LinkId=124807" style="text-decoration: none;">
<img src='info.PNG' style='width:17px; height:19px;border-style: none' align='middle'><span class='lazez'><strong>There is a newer version of <span style='color:#FF00FF'>Microsoft Silverlight</span>...Click here if you want to install it</strong></span>
</a>
<object data="data:application/x-silverlight," type=" application/x-silverlight-2-b2" width="90%" height="330"> <param name="source" value="MinoPlayer_Ver1_2.xap">
<a href="http://go.microsoft.com/fwlink/?LinkId=124807" style="text-decoration: none;">
<img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Click here to install Silverlight" style="border-style: none">
</a>
<div align="center"> <!-- outer silverlight object--> <object data="data:application/x-silverlight," type="application/x-silverlight-2" width="90%" height="330"> <param name="source" value="MinoPlayer_Ver1_2Final.xap"> <param name="onerror" value="onSilverlightError"> <param name="background" value="black"> <param name="initParams" value="VideoSource=http://silverlight.services.live.com/77137/Arabic4/video.wmv,AutoPlay=false,EnableScrubbing=true,InitialVolume=1,PreviewImage=http://www.eschoolsudan.com/images/PreviewImage.JPG,LogoImage=http://www.eschoolsudan.com/images/logosmall.JPG,MarkersTimeView=5"> <div class='worningpanel' align="left"> <a href="http://go.microsoft.com/fwlink/?LinkId=124807" style="text-decoration: none;"> <img src='info.PNG' style='width:17px; height:19px;border-style: none' align='middle'><span class='lazez'><strong>There is a newer version of <span style='color:#FF00FF'>Microsoft Silverlight</span>...Click here if you want to install it</strong></span> </a> ... </div><br> <div align="center"> <!-- Inner silverlight object--> <object data="data:application/x-silverlight," type="application/x-silverlight-2-b2" width="90%" height="330"> <param name="source" value="MinoPlayer_Ver1_2.xap"> <param name="onerror" value="onSilverlightError"> <param name="background" value="black"> <param name="initParams" value="VideoSource=http://silverlight.services.live.com/77137/Arabic4/video.wmv,AutoPlay=false,EnableScrubbing=true,InitialVolume=1,PreviewImage=http://www.eschoolsudan.com/images/PreviewImage.JPG,LogoImage=http://www.eschoolsudan.com/images/logosmall.JPG,MarkersTimeView=5"> <a href="http://go.microsoft.com/fwlink/?LinkId=124807" style="text-decoration: none;"> <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Click here to install Silverlight" style="border-style: none"> </a> </object> </div> </object> <iframe style='visibility: hidden; height: 0; width: 0; border: 0px'></iframe> </div>