[Expert] WebBrowser et objets Javascript

Gendal67 Messages postés 627 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 24 juillet 2011 - 23 juin 2008 à 01:42
Just12 Messages postés 5 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 25 août 2008 - 25 août 2008 à 10:16
Bonsoir tout le monde,

Après de longs moments à chercher une réponse vainement sur le web, je me permets de vous adresser mon petit problème :

J'ai une application WinForm en C#, utilisant un contrôle WebBrowser. Avec ce dernier, je vais sur un site contenant un objet ActiveX Flash (crée dynamiquement par JavaScript => objet SWFObject).
Mon but final serait de permettre à mon application C# de communiquer avec cet animation flash.

Restrictions :

1) Application WinForm obligatoirement (pas de site ASP.NET)
2) Utilisation obligatoire du contrôle WebBrowser = pas question d'ajouter un contrôle ActiveX à la form .NET puis loader un fichier swf (l'objet flash ne doit pas "être sorti de son site")

Je suis dans l'impasse.... mes recherches se sont arrêtées à : comment récupérer une "référence" de l'objet SWFObject qui a été crée dans la page HTML, en C#.... puisqu'il faut que mon applicaiton .NET s'enregistre aux events de l'objet.

J'avoue être perdu... même pas une piste... et je n'ai rien trouvé de concluant en étudiant la classe HtmlElement ou son équivalent DOM.
J'aimerais pouvoir faire un truc du genre :

AxShockwaveFlashObjects.AxShockwaveFlash monAnimation = (AxShockwaveFlashObjects.AxShockwaveFlash) monHtmlElement.Value

Si quelqu'un de spécialisé dans ce domaine (ou quelqu'un de malin ) pourrait m'aider, ça serait sympathique...

Cordialement,
Jack

4 réponses

Just12 Messages postés 5 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 25 août 2008
21 août 2008 à 08:46
Regarde dans les exmples de flash 9 (AS3), il existe un sample nommé IntrovertIM_CSharp qui montre de l'interoperabilité flash CSharp.
0
Just12 Messages postés 5 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 25 août 2008
21 août 2008 à 08:57
(par contre, il faut directement charger le flash, tu as peut être besoin qu'il soit dans une page web ?)
0
Gendal67 Messages postés 627 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 24 juillet 2011 2
21 août 2008 à 16:18
Bonjour,

Le projet IntrovertIM_CSharp montre l'intégration d'un objet Flash dans une WinForm.
Oui, j'ai besoin qu'il soit dans une page web... je dirai même que j'ai besoin de récupérer PRECISEMENT l'instance de l'objet ActiveX affichée sur la page web (car il y a des Id de sessions etc)

Je ne vois toujours aucune solution

Cordialement,
Jack
0
Just12 Messages postés 5 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 25 août 2008
25 août 2008 à 10:16
j'ai une solution pour communiquer :
si tu controle la page, tu peux y mettre du javascript ; au pire tu l'ajoute à la volé dans ton document dans le webBrowser.
ensuite tu communique avec le javascript via ObjectForScripting de WebBrowser en C# et document.external de JS
enfin c'est ton javascript qui communique avec le flash (external et tout le bazard...). ça se fait assez bien je pense.
0
Rejoignez-nous