KnowledgeBase - Microsoft Internet Explorer 11 and Silverlight plugin detection
Article

Microsoft Internet Explorer 11 and Silverlight plugin detection

« Go Back
Products
Webtrends Synchronus tag (v9.x and earlier)
Webtrends Asynchronus tag (v10.x and above)
Symptoms
Visitors to your site may experience pop-up messages or errors in the Java console relating to Silverlight detection when using Microsoft Internet Explorer v11.
Cause
Using Internet Explorer v11 on the Microsoft Windows 8 platform now runs in "Enhanced Protection" mode for non-trusted sites (internet sites).  The mode makes Internet Explorer run in 64 bit mode, making some plugins unavailable, including Silverlight. The warning displayed by Internet Explorer 11 is asking the user to trust the website (to force it to not use enhanced protection mode, put it back in 32 bit mode) to enable the plugin. Since this warning relates to what is essential ‘hidden’ JavaScript code, it is counter-intuitive to most users what is actually happening, and contributes to a negative browsing experience.
Workaround

The temporary fix is to remove the following pieces of code from your webtrends.js file if it is present.

PLEASE NOTE:
Removing this code will cause the “Silverlight Support” custom report to report to stop receiving data until a replacement function is supplied. Webtrends is working on replacement code that will be distributed via Tagbuilder once available.

Webtrends Asynchronous Tag
(v10.x and later)
 

WT["slv"] = (function () {
     var slv = "Not enabled";
     try {
         if (_navigator.userAgent.indexOf('MSIE') != -1) {
             var sli = new ActiveXObject('AgControl.AgControl');
             if (sli) {
                 slv = "Unknown";
             }
         } else if (_navigator.plugins["Silverlight Plug-In"]) {
             slv = "Unknown";
         }
     } catch (e) {
         self.errorlogger(e);
     }
     if (slv != "Not enabled") {
         var i, m, M, F;
         if ((typeof (Silverlight) == "object") && (typeof (Silverlight.isInstalled) == "function")) {
             for (i = 9; i > 0; i--) {
                 M = i;
                 if (Silverlight.isInstalled(M + ".0")) {
                     break;
                 }
                 if (slv == M) {
                     break;
                 }
             }
             for (m = 9; m >= 0; m--) {
                    F = M + "." + m;
                    if (Silverlight.isInstalled(F)) {
                         slv = F;
                         break;
                    }
                    if (slv == F) {
                         break;
                    }
             }
         }
     }
     return slv;
})();
 

Webtrends Synchronous Tag 
(v9.x and earlier)

WT.slv=(function(){
     var slv="Not enabled";
     try{    
         if (navigator.userAgent.indexOf('MSIE')!=-1){
             var sli = new ActiveXObject('AgControl.AgControl');
             if (sli){
                 slv="Unknown";
             }
         }
         else if (navigator.plugins["Silverlight Plug-In"]){
             slv="Unknown";
         }
     }
     catch(e){
     }
     if (slv!="Not enabled"){
         var i,m,M,F;
         if ((typeof(Silverlight)=="object")&&(typeof(Silverlight.isInstalled)=="function")){
             for(i=9;i>0;i--){
                 M=i;
                 if (Silverlight.isInstalled(M+".0")){
                     break;
                 }
                 if (slv==M){
                     break;
                 }
             }
             for (m=9;m>=0;m--){
                 F=M+"."+m;
                 if (Silverlight.isInstalled(F)){
                     slv=F;
                     break;
                 }
                 if (slv==F){
                     break;
                 }
             }
         }
     }
     return slv;
})();


For the webtrends.min.js, you may remove the following code:

c.slv=function(){var a="Not enabled";try{k.userAgent.indexOf("MSIE")!=-1?new ActiveXObject("AgControl.AgControl")&& 
(a="Unknown"):k.plugins["Silverlight Plug-In"]&&(a="Unknown")}catch(c){b.I(c)}if(a!="Not enabled"){var d,e,f;if(typeof Silverlight=="object"&&typeof Silverlight.qa=="function"){for(d=9;d>0;d--){e=d;if(Silverlight.qa(e+".0"))break;if(a==e)break}for(d=9;d>=0;d--){f=e+"."+d;if(Silverlight.qa(f)){a=f;break}if(a==f)break}}}return a}();

 
Resolution
Was this article helpful?

Please tell us how we can make this article more useful.

Characters Remaining: 255