2010-06-16 4 views
0

En plus d'ajouter these Types de fichiers à IIS et d'installer .NET Framework 4.0 sur le serveur Web, que dois-je faire d'autre pour obtenir une application Web Hello Word Silver Light à travail? Existe-t-il une installation Silverlight distincte?Déploiement d'une application Hello World Silverlight sur IIS5, Win XP

Bien que le site Web fonctionne quand je déploie localement, je reçois l'erreur suivante après le déploiement sur un serveur Web distant:

Line: 54 
Error: Unhandled Error in Silverlight Application 
Code: 2104  
Category: InitializeError  
Message: Could not download the Silverlight application. Check web server settings  

J'accède au fichier XAP via une page html générée:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" > 

<head> 
    <title>SilverPipeline</title> 
    <style type="text/css"> 
    html, body { 
     height: 100%; 
     overflow: auto; 
    } 
    body { 
     padding: 0; 
     margin: 0; 
    } 
    #silverlightControlHost { 
     height: 100%; 
     text-align:center; 
    } 
    </style> 
    <script type="text/javascript" src="Silverlight.js"></script> 
    <script type="text/javascript"> 
     function onSilverlightError(sender, args) { 
      var appSource = ""; 
      if (sender != null && sender != 0) { 
       appSource = sender.getHost().Source; 
      } 

      var errorType = args.ErrorType; 
      var iErrorCode = args.ErrorCode; 

      if (errorType == "ImageError" || errorType == "MediaError") { 
       return; 
      } 

      var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ; 

      errMsg += "Code: "+ iErrorCode + " \n"; 
      errMsg += "Category: " + errorType + "  \n"; 
      errMsg += "Message: " + args.ErrorMessage + "  \n"; 

      if (errorType == "ParserError") { 
       errMsg += "File: " + args.xamlFile + "  \n"; 
       errMsg += "Line: " + args.lineNumber + "  \n"; 
       errMsg += "Position: " + args.charPosition + "  \n"; 
      } 
      else if (errorType == "RuntimeError") {   
       if (args.lineNumber != 0) { 
        errMsg += "Line: " + args.lineNumber + "  \n"; 
        errMsg += "Position: " + args.charPosition + "  \n"; 
       } 
       errMsg += "MethodName: " + args.methodName + "  \n"; 
      } 

      throw new Error(errMsg); 
     } 
    </script> 
</head> 
<body> 
    <form id="form1" runat="server" style="height:100%"> 
    <div id="silverlightControlHost"> 
     <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> 
      <param name="source" value="ClientBin/SilverPipeline.xap"/> 
      <param name="onError" value="onSilverlightError" /> 
      <param name="background" value="white" /> 
      <param name="minRuntimeVersion" value="3.0.40818.0" /> 
      <param name="autoUpgrade" value="true" /> 
      <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40818.0" style="text-decoration:none"> 
       <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/> 
      </a> 
     </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div> 
    </form> 
</body> 
</html> 

Dois-je installer un composant de serveur Silverlight?

Répondre

0

Comparez la version pour le dossier virtuel dans IIS version cadre de l'application que vous déployez pour vous assurer qu'ils correspondent.

+0

Vous avez raison. C'était mon problème particulier. – ChadD

0

Essayez de demander le fichier .XAP directement. Cela aidera à prendre cryptiques erreurs Silverlight de l'équation:

http://myserver/directories/blah/myapplication.xap

+0

IE présente ensuite un diaglog me demandant d'identifier l'application avec laquelle ouvrir le fichier xap. Cela ne semble pas correct. – ChadD

+0

S'il vous plaît voir ma mise à jour à ma question orig. ty – ChadD

+0

Correct - cela signifie que votre XAP est très bien servi. –

0

Comment vous chargez le fichier Silverlight? Utilisez-vous le contrôle ASP.NET Silverlight, l'appel JavaScript Silverlight ou utilisez-vous une balise d'objet? Afin de supprimer ASP.NET et JavaScript en tant que sources possibles de problèmes, vous pouvez essayer de le charger à partir d'une balise d'objet dans un fichier html classique.