开发者

Deploying a Hello World Silverlight app to IIS5, Win XP

开发者 https://www.devze.com 2023-01-04 02:35 出处:网络
Besides adding these File Types to IIS and installing the .NET framework 4.0 to the Web Server, what else do I need to do to get a Hello Word Silver Light web app to work? is there a separate Silverli

Besides adding these File Types to IIS and installing the .NET framework 4.0 to the Web Server, what else do I need to do to get a Hello Word Silver Light web app to work? is there a separate Silverlight installation needed?

Though the web site works when I deploy locally, I am getting the following error after deploying to a remote web server:

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

I am accessing the xap file via a generated html page:

<!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>

Do I have to install some Silverlight server component?


In addition to the MIME Types, have you checked the content expiration settings and execute permissions?

A quick google on that error code turned up this post: http://weblogs.asp.net/javiervillarreal/archive/2008/06/14/silverlight-error-2104-could-not-download-the-silverlight-application-in-iis6.aspx


Try requesting the .XAP file directly. This will help take cryptic Silverlight errors out of the equation:

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


How are you loading the Silverlight file? Are you using the ASP.NET Silverlight control, the Silverlight JavaScript call or are you using an object tag? In order to remove ASP.NET and JavaScript as possible sources of problems, you may want to try loading it from an object tag in a regular html file.


Compare the version for the virtual folder in IIS to to framework version of the app you are deploying to make sure that they match.

0

精彩评论

暂无评论...
验证码 换一张
取 消