Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Flashlet.flashAvailable() out-of-date?

    I am using v8.2p_2012-05-08

    The Flashlet.flashAvailable() code in PluginBridges.js seems to test for a limited range of Flash versions using VBScript:

    Code:
    For i = 2 to 9
    If Not(IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & i))...
    I found this code was returning false when using IE8 on XP SP3 with Flash 11.4.

    I tried changing the upper limit to 11, but that didn't appear to work, either.

    I then replaced that whole section of code with:

    Code:
    if(isc.Browser.isIE){
    
      var isInstalled = false;
      var version = isc.Flashlet.flashVersion;
    
      if (window.ActiveXObject) {
        var control = null;
        try {
          control = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
        } catch (e) {
        }
        if (control) {
          isInstalled = true;
          version = control.GetVariable('$version').substring(4);
          version = version.split(',');
          version = parseFloat(version[0] + '.' + version[1]);
        }
      }
    
      isc.Flashlet.flashSupported = isInstalled;
      isc.Flashlet.flashVersion = version;
    
    // end if IE
    } else ...
    and this seemed more reliable. Any comments?

    #2
    The VBScript approach was an older method of determining the version. We've updated the logic to create and query a flash control, and verified it on multiple versions of Windows and IE.

    It should be in the nightly build shortly.
    Last edited by Isomorphic; 3 Sep 2012, 14:03.

    Comment


      #3
      Thanks, this does appear to be working now!

      Comment


        #4
        The same problem appears again.
        I use v9.0p_2014-04-15/PowerEdition
        with the latest IE11 browser:
        Version 11.0.9600.16428IS
        The Browser has the following setting:
        Tools -> ActiveX Filtering (disabled, not checked in);
        Manage Add-ons:
        Shockwave Flash Object, Version 12.0.0.77 Enabled.
        I can see the Flash from the www.adobe.com site, so there is no problem with the Flash objects on other sites.

        I have a problem with the following code:
        Flashlet.flashAvailable() always returns false.

        This problem appears only with the IE11, rest of the browsers work fine.
        For example
        Code:
        if ( Flashlet.flashAvailable() ) {
            System.out.println("Available");
        } else {
             System.out.println("NOT Available");
        }
        always returns FALSE for the IE 11. The OS is Win 7.

        Comment


          #5
          Thanks for pointing this out. It looks like IE is rapidly dropping APIs without regard to backcompat these days.

          This is now fixed for tomorrow's builds of all versions 3.0 and up.

          Comment


            #6
            Thank you for your prompt reply.

            Comment


              #7
              tested with SmartClient Version: v9.0p_2014-04-23/PowerEdition Deployment (built 2014-04-23) - the issue has been fixed.

              Comment

              Working...
              X