Каков наилучший способ отображения Flash
контента в C# WinForms приложении? Я хотел бы создать пользовательский элемент управления (подобный текущему PictureBox
), который сможет отображать изображения и флэш-контент.
Было бы здорово иметь возможность загружать флэш-контент из потока, а не из файла на диске.
Хотя я сам не использовал flash-объект внутри приложения windows form, я знаю, что это возможно. В Visual studio на панели инструментов выберите добавить новый компонент. Затем в появившемся окне выберите вкладку "COM Components", чтобы получить список, в котором вы можете найти "Shockwave Flash Object".
После добавления в панель инструментов просто используйте элемент управления, как вы бы использовали любой другой "стандартный" элемент управления из visual studio.
Для взаимодействия с элементом управления доступны три простые команды:
которые, я думаю, не требуют объяснений.
Было бы здорово иметь возможность загружать... содержимое флэш-памяти из потока рода, а не из файла на диске.
Я только что увидел, что вы также ищете средство для загрузки содержимого из потока, и поскольку я не уверен, что это возможно с объектом shockwave flash, я дам вам еще один вариант (на самом деле два).
Первый вариант я бы посоветовал вам использовать только в случае необходимости, поскольку он использует полноценный компонент "webbrowser" (также доступен как дополнительный элемент набора инструментов), что похоже на попытку подстрелить муху из базуки. Конечно, он будет работать, поскольку элемент управления будет действовать как настоящее окно браузера (на самом деле браузер Internet Explorer), но он не предназначен для использования так, как вам нужно.
Второй вариант - использовать то, что я только что обнаружил, когда искал больше информации о воспроизведении flash-контента внутри формы windows. F-IN-BOX - это коммерческое решение, которое также воспроизводит контент с заданного URL сайта. (Приведенная ссылка направляет вас к коду .NET, который необходимо использовать).
Sven, вы пришли к тому же выводу, что и я: Я нашел Shockwave Flash Object, пусть и немного другим путем, но был поставлен в тупик тем, как загрузить файлы не из файла на диске/URL. F-IN-BOX, хотя и является лишь оберткой Shockwave Flash Object, кажется, предоставляет гораздо больше функциональности, что может мне помочь!
Стрельба по мухам из базуки может быть забавной, но встроенный веб-браузер - это не тот путь, который я ищу. :)
На сайте Adobe была ссылка о "Встраивании и взаимодействии с Macromedia Flash Player в приложениях C# Windows", но они, похоже, ее удалили :(