Wer hätte das gedacht, das es so einfach ist eine Silverlight-Anwendung ins Internet zu bringen. Und das ganze auch noch für Lau bzw. Umme wie ein Ex-Kollege aus dem Rheinland zu sagen pflegte.

Um eine Silverlight Anwendung bei Windows Live zu veröffentlichen geht man am besten wie folgt vor.

1. Anmelden mit einer Windows Live ID bei http://silverlight.live.com

2. Erstellen eines Manifestes für die Silverlight Anwendung in Form einer XML-Datei

<SilverlightApp>
  <version>1.0</version>
  <loadFunction>StartWithParent</loadFunction>
  <jsOrder>
    <js>MicrosoftAjax.js</js>
    <js>BasePlayer.js</js>
    <js>PlayerStrings.js</js>
    <js>player.js</js>
    <js>StartPlayer.js</js>
  </jsOrder>
</SilverlightApp>

In dieser Datei müssen die verwendeten JavaScript-Dateien und die Startfunktion hinterlegt werden.

3. Alle benötigten Dateien (exklusive HTML-Seite und Projektdateien) in eine ZIP-Datei packen

4. Uploaden

Schritte zum einbinden der Silverlight-Anwendung in eigene Webseiten

Anschließend kann man über Silverlight.live.com diese neue Anwendung in beliebige Webseiten einbauen. Die dazu nötigen Schritte werden auf der Seite inkl. nötiger Skripte angeboten.

1. Im Header-Bereich der Webseite muss das Silverlight.js mittels <script type="text/javascript" source=http://agappdom.net/silverlight.js></script> eingebunden werden.

2. Zusätzlich wird die CreateSilverlight-Methode mit den nötigen Informationen zur eigentlichen Anwendung in einen seperaten Skriptblock im Header eingefügt

function CreateSilverlight() {
Silverlight.createHostedObjectEx({source: "streaming:/28637/test2", parentElement: Wrapper_test2});
}

3. Letztendlich positioniert man das eigentliche Silverlight-Control im Body-Bereich der Webseite an eine beliebige Stelle.

<div id="Wrapper_test2" style="width:500px; height:400px" overflow:hidden;">
<script type="text/javascript">
var Wrapper_test2 = document.getElementById("Wrapper_test2");
CreateSilverlight();
</scipt>
</div>

Einfach mal selber ausprobieren und gucken was für eine Anwendung ich geschrieben / designt habe ;-)