У меня есть HTML-страница, которая содержит флэш-файл и некоторую функцию JavaScript, которая возвращает объект флэш-файла.
До сих пор я мог вызывать функцию JavaScript из C # и возвращать ей объект,но я хочу привести его как AxShockwaveFlash и получить доступ к COM-объекту непосредственно из C #.
Я видел, как это было сделано с помощью проигрывателя Windows Media, встроенного в HTML-страницу, но, похоже, он не работает с flash.
<script type="text/JavaScript"> function GetWMP() { return(testing); } <script></p>
<p><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="857" height="480" id="testing"></p>
<p><param name="movie" value="test.swf" /></p>
<p><param name="quality" value="high" /></p>
<p><param name="bgcolor" value="#ffffff" /></p>
<p><param name="allowScriptAccess" value="always" /></p>
<p><param name="allowFullScreen" value="true" /></p>
<p></object>
Ниже приведен мой код C #, который возвращает объект.
object o = webBrowser1.Document.InvokeScript("ReturnFlash");</p>
<p>AxShockwaveFlashObjects.AxShockwaveFlash flash = (AxShockwaveFlashObjects.AxShockwaveFlash)o;
Когда я пытаюсь привести объект к AxShockwaveFlash, егоне удается, но я видел, как работает приведение объекта к WindowsMediaPlayer.
Я попытался выяснить, поддерживает ли AxShockwaveFlash вызовы QueryInterface, согласно сообщению об ошибке, но Google не возвратил значения.
Спасибо