Тэг EMBED имеет длинную и проблемную историю, впервые появившуюся в Netscape, поэтому он избегает Microsoft вплоть до IE3, затем объявляется устаревшим в HTML 4 в пользу тега OBJECT, а затем возвращается в HTML 5.
Разница между тегами embed и object заключается в том, что тег embed выводит приложение обработки на основе типа данных, в то время как тег object ожидает, что вы явно укажете приложение с помощью атрибутов classid и codebase.
Вам также следует учитывать тот факт, что IE использует элемент управления ActiveX для отображения Flash, поэтому отображение Flash в IE и других браузерах не выполняется одним и тем же программным обеспечением. Это, конечно, вызывает проблемы.
Я вижу две возможные причины, по которым тег EMBED не работает:
- Shockwave Flash ActiveX не работает (проверьте здесь)
- MIME-тип .swf не работает. Это, вероятно, определяется в этом разделе реестра:
HKEY_CLASSES_ROOT\Mime\Database\Content Type\application/x-shockwave-flash
.
Дополнительную информацию можно найти в разделе : Устранение неполадок при установке Flash Player | Windows
Некоторые полезные ресурсы:
JavaScript-библиотека определения Flash (Flash Detect)
ActiveXHelper - просмотр необходимой информации об установленных компонентах ActiveX.