A quick method of getting around this annoying problem is to write the flash to your HTML from an external Javascript file.
Example
- demo.htm
HTML:
Code:
<html>
<head>
<title>IE Flash Fix Demo</title>
<script language="javascript" src="flashfix.js">
</head>
<body>
<div id="flash_container"></div>
<script language="javascript">
writeFlash('flash_container');
</script>
</body>
</html>
- flashfix.js
JavaScript:
Code:
function writeFlash(id) {
document.getElementById(id).innerHTML = "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0' width='200' height='200' id='myflash' align='middle'><param name='allowScriptAccess' value='sameDomain' /><param name='movie' value='mymovie.swf' /><param name='quality' value='high' /><param name='bgcolor' value='#ffffff' /><embed src='mymovie.swf' quality='high' bgcolor='#ffffff' width='200' height='200' name='mymovie' align='middle' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' /></object>";
}
Another solution is to use SWFObject. SWFObject has alot of great features for embedding flash into your HTML including the ability to detect what version of flash a user's browser is running.
Finally there is no 'legit' way to make it work. It was introduced by MS as a result of losing a legal patent war =/. Hope this helps anyway.