Copy link to clipboard
Copied
Hi,
I have a application that uses flashvars to pass parameters to a swf. AS3. This has worked for years. Now, with IE11, the flashvars no longer are visible to the
SWF.
in HTML:
<param name="=FlashVars" value="dataSourceBeanName=tvContext&contextRoot=2Fem&doDbgLog=true&showNavigator=true&noRightClick=false" />
in actionscript:
var p:Object = mx.core.Application.application.parameters;
for (var keyStr:String in p)
{
trace("params[" + keyStr + "] =" + p[keyStr]);
}
produces nothing in IE11, chrome, firefox, safari and older IE is fine. My application is broken in IE11.
I am using the latest version 12 activex plugin.
HELP!
Thanks,
Larry
Copy link to clipboard
Copied
The name attribute looks incorrect to me. Maybe older browsers are more tolerant?
Copy link to clipboard
Copied
Thanks, I played with the flashvars case. I tried flashVars, flashvars, and FlashVars.... Which I had seen in examples around.
Last one I tried was from an Adobe example :
FlashVars: http://helpx.adobe.com/flash/kb/pass-variables-swfs-flashvars.html
flashvars : http://helpx.adobe.com/flash/kb/flash-object-embed-tag-attributes.html
flashVars : http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf626ae-7feb.html
Still no joy.
I did notice that IE does lowercase flashvars in the !IE object (non-activeX), but that should not matter. This is pasted from the DOM in IE webdeveloper.
<object width="100%" height="500" id="topo" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="https://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab" style="z-index: 10;" onbeforeunload="beforeunload1(event)">
<param name="movie" value="EmTopo.swf">
<param name="quality" value="high">
<param name="bgcolor" value="#869ca7">
<param name="allowScriptAccess" value="always">
<param name="wmode" value="transparent">
<param name="allowNetworking" value="all">
<param name="=flashVars" value="&dataSourceBeanName=tvContext&contextRoot=2Fem&doDbgLog=true&showNavigator=true&noRightClick=false">
<!--[if !IE]>-->
<object name="topo" width="100%" height="500" tabindex="0" align="middle" data="EmTopo.swf" type="application/x-shockwave-flash" wmode="transparent" quality="high" pluginspage="http://www.adobe.com/go/getflashplayer" play="true" loop="false" flashvars="dataSourceBeanName=tvContext&contextRoot=%2Fem&doDbgLog=true&noRightClick=false&showNavigator=true&showButtonCenter=false" bgcolor="#869ca8" allowscriptaccess="always" allownetworking="all">
<!--<![endif]-->
<p> Alternate text </p>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
<div id="tvAlignDivtopo" style="left: 561px; top: 577px; width: 1px; height: 1px; visibility: hidden; position: absolute;"></div></object>
Larry
Copy link to clipboard
Copied
It could just be a the forum formatting, but I am seeing an "=" (equals sign) before "flashvars" which could make a difference.
-Alex
Copy link to clipboard
Copied
Making some progress... But still not too happy. I put in every way I could think of to get flashvars in.
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="https://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab" height="500px" id="topo" style="z-index: 10; " width="100%" onbeforeunload="beforeunload1(event)">
<param name="movie" value="EmTopo.swf?dataSourceBeanName1=tvContext1" />
<param name="quality" value="high" />
<param name="bgcolor" value="#869ca7" />
<param name="allowScriptAccess" value="always" />
<param name="wmode" value="transparent" />
<param name="allowNetworking" value="all" />
<param name="=flashVars" value="dataSourceBeanName=tvContext" />
<!--[if !IE]>-->
<object align="middle" allownetworking="all" allowscriptaccess="always" bgcolor="#869ca8" flashVars="dataSourceBeanName3=tvContext3" height="500px" loop="false" name="topo" play="true" pluginspage="http://www.adobe.com/go/getflashplayer" quality="high" data="EmTopo.swf?dataSourceBeanName2=tvContext2" tabindex="0" type="application/x-shockwave-flash" width="100%" wmode="transparent">
<!--<![endif]-->
<p> Alternate text </p>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
In the SWF I see params[dataSourceBeanName2] =tvContext2
var p:Object = mx.core.Application.application.parameters;
for (var keyStr:String in p)
{
trace("params[" + keyStr + "] =" + p[keyStr]);
}
var p1:Object = LoaderInfo(this.root.loaderInfo).parameters;
for (var keyStr:String in p1)
{
trace("params[" + keyStr + "] =" + p1[keyStr]);
}
It appears that IE is ignoring the first flashVars declaration object that should load the activeX component (the second one should load the plugin, not the activeX). However, IE11 seems to be downcasing the "flashVars" parameter to "flashvars" (when I look at flashvars in IE developer it is all lowercase), which perhaps adobe wants to be "flashVars"? Just guessing
I have no idea WHY it should be using the non-activeX object and ignoring the flashVars with the activeX.....
Now to see if I can actually use this HACK by duplicating all the vars I need on the data=".........." adn hope this does not interfere with webserver parameters in some way.
Larry