Aller au contenu

Appel DDE et IE/Maxthon


Messages recommandés

Bonjour,

 

J'aimerais savoir s'il existe une différence entre le serveur DDE de IE et celui de Maxthon car j'ai un problème assez étrange. Je développe une application au sein de laquelle j'effectue un appel DDE pour obtenir les informations concernant la dernière page ouverte dans le navigateur en utilisant le serveur DDE IExplore, avec pour sujet WWW_GetWindowInfo. L'appel passe sans encombres avec maxthon mais n'abouti pas avec IE.

 

Les versions n'ont pas d'importance : j'ai testé avec les version de Maxthon que j'avais sous la main, et les versions 6 et 7 du navigateur de Microsoft.

 

Si vous aviez plus d'informations à me communiquer à propos de DDE sous Maxthon, je vous en serai très reconnaissant doh.gif

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

J'aimerais savoir s'il existe une différence entre le serveur DDE de IE et celui de Maxthon car j'ai un problème assez étrange. Je développe une application au sein de laquelle j'effectue un appel DDE pour obtenir les informations concernant la dernière page ouverte dans le navigateur en utilisant le serveur DDE IExplore, avec pour sujet WWW_GetWindowInfo. L'appel passe sans encombres avec maxthon mais n'abouti pas avec IE.

 

Les versions n'ont pas d'importance : j'ai testé avec les version de Maxthon que j'avais sous la main, et les versions 6 et 7 du navigateur de Microsoft.

 

Si vous aviez plus d'informations à me communiquer à propos de DDE sous Maxthon, je vous en serai très reconnaissant doh.gif

 

Bonjour,

 

Maxthon parle des DDe dans les options de Maxthon --> onglets avancés.

 

voir aussi le wiki :

 

http://www.maxthon-fr.com/wiki/index.php/Avanc%C3%A9

 

en bas de page.

 

:shocked:

Lien vers le commentaire
Partager sur d’autres sites

Merci ernest.

 

Cependant, cela ne me dit pas si le serveur (ou du moins, son nom) DDE de Mathon diffère de celui de IE :angelic:

 

En effet, je ne m'explique pas pourquoi mon appel passe avec Maxthon et pas avec IE. Si le serveur possède le même nom (IExplore), lorsque Maxthon n'est pas installé sur ma machine, l'appel devrait passer :/

 

En clair voià la situation (après avoir testé sur une autre machine) :

 

- Machine avec Maxthon et IE : l'appel passe sur Maxthon, pas sur IE

- Machine avec IE seulement ; l'appel ne passe pas

 

L'option de Maxthon relative à DDE, pas plus que le wiki, ne m'aide à ce sujet, malheureusement...

Lien vers le commentaire
Partager sur d’autres sites

Merci ernest.

 

Cependant, cela ne me dit pas si le serveur (ou du moins, son nom) DDE de Mathon diffère de celui de IE wacko.png

 

En effet, je ne m'explique pas pourquoi mon appel passe avec Maxthon et pas avec IE. Si le serveur possède le même nom (IExplore), lorsque Maxthon n'est pas installé sur ma machine, l'appel devrait passer :/

 

En clair voià la situation (après avoir testé sur une autre machine) :

 

- Machine avec Maxthon et IE : l'appel passe sur Maxthon, pas sur IE

- Machine avec IE seulement ; l'appel ne passe pas

 

L'option de Maxthon relative à DDE, pas plus que le wiki, ne m'aide à ce sujet, malheureusement...

 

Bonsoir,

 

Il y a des explications dans Centre d'aide et de support de Windows XP sp2, (il faut taper : DDE dans la zone de recherche), mais je ne saisis pas tout.

 

Il me semble toutefois que le DDE c'est un composant de Windows (qqun le dit ici : http://www.filemaker.fr/help/ScriptsRef-262.html ), ce qui n'explique pas pourquoi il fonctionnne avec Maxthon et IE et pas avec IE seul ?

 

je continue à chercher sur le web :angelic:

 

Une définition de DDe :

 

DDE Dynamic Data Exchange Échange dynamique de données.

Protocole de Windows et d’OS/2 PM qui établit un lien permanent entre deux applications. Il permet l’envoi de données et de commandes d’un logiciel demandeur (client) à un logiciel fournissant des services (serveur). Un applicatif client DDE pourra ainsi complètement piloter l’applicatif serveur.Les données échangées par DDE peuvent être de plusieurs formats (texte, image bitmap, image metafile, texte enrichi). trouver ici :

 

http://phortail.org/webntic/imprimer-48.html

 

19:00

Il y a un article intéressant à cette adresse : http://206.167.24.24/profs/Etudiants/Rappo...ard/ActiveX.htm

 

 

19:08 (recherche dans google avec : WWW_GetWindowInfo

 

Ici : http://www.vbfrance.com/code.aspx?ID=34451

 

peux-être as-tu du code à compléter

;)

Lien vers le commentaire
Partager sur d’autres sites

J'ai vu la source sur vbfrance, et je me suis inspiré d'une autre source delphi pour l'adapter à mon code C# à l'aide de NDDE (ouf !)

 

Voilà ledit code :

 

using NDde;

...

DdeContext context = new DdeContext(this);

DdeClient _Client = new DdeClient("IExplore", "WWW_GetWindowInfo", context); // Serveur DDE et topic

byte[] data = _Client.Request("sURL", 1, 60000); // Donnée à récupèrer
string str = System.Text.Encoding.UTF7.GetString(data).Replace("\r\n", "");
string[] tokens = str.Split(new char[] { ',' });
string u = tokens[0].Replace("\"", "");
string t2 = tokens[1].Replace("\"", "");

_Client.Dispose();
context.Dispose();

 

Impec avec Maxthon, rien à faire avec IE.

 

Je vais tenter les newsgroups de Microsoft.

Lien vers le commentaire
Partager sur d’autres sites

J'ai vu la source sur vbfrance, et je me suis inspiré d'une autre source delphi pour l'adapter à mon code C# à l'aide de NDDE (ouf !)

 

Voilà ledit code :

 

using NDde;

...

DdeContext context = new DdeContext(this);

DdeClient _Client = new DdeClient("IExplore", "WWW_GetWindowInfo", context); // Serveur DDE et topic

byte[] data = _Client.Request("sURL", 1, 60000); // Donnée à récupèrer
string str = System.Text.Encoding.UTF7.GetString(data).Replace("\r\n", "");
string[] tokens = str.Split(new char[] { ',' });
string u = tokens[0].Replace("\"", "");
string t2 = tokens[1].Replace("\"", "");

_Client.Dispose();
context.Dispose();

 

Impec avec Maxthon, rien à faire avec IE.

 

Je vais tenter les newsgroups de Microsoft.

 

Bonsoir,

 

Bonne chance sur les newsgroups

 

mais dans la page de vbforum les séparateurs sont des " | " et non des virgules et des apostrophes

....

 

Private Sub Form_Load()

Text1.LinkTopic = "IExplore|WWW_GetWindowInfo"

Text1.LinkItem = "0xffffffff"

Text1.LinkMode = 2

Text1.LinkRequest

End Sub

'pour Netscape

Private Sub Form_Load()

Text1.LinkTopic = "Netscape|WWW_GetWindowInfo"

Text1.LinkItem = "0xffffffff"

Text1.LinkMode = 2

Text1.LinkRequest

End Sub

 

.....

 

peut-être que cela a une importance ?

:angelic:

Lien vers le commentaire
Partager sur d’autres sites

Je serai tenté de dire non, étant donné que j'utilise exactement le même code pour récupèrer les mêmes données depuis Opera, Netscape, et Firefox, et que tout se passe bien pour tous les navigateurs, exception faite de IE.

 

De plus, la librairie NDDE que j'utilise impose cette structure : elle se charge de recréer la requête formulée correctement : comme dans l'exemple en VB.

 

Enfin, ca se vérifie avec le message d'erreur que je reçois (qui n'est pas des plus informatifs) : The DDEML failed to request IExplore|WWW_GetWindowInfo!sUrl

Lien vers le commentaire
Partager sur d’autres sites

Je serai tenté de dire non, étant donné que j'utilise exactement le même code pour récupèrer les mêmes données depuis Opera, Netscape, et Firefox, et que tout se passe bien pour tous les navigateurs, exception faite de IE.

 

De plus, la librairie NDDE que j'utilise impose cette structure : elle se charge de recréer la requête formulée correctement : comme dans l'exemple en VB.

 

Enfin, ca se vérifie avec le message d'erreur que je reçois (qui n'est pas des plus informatifs) : The DDEML failed to request IExplore|WWW_GetWindowInfo!sUrl

 

Le problème pourrait venir d'un fichier "ddeml.dll" ?

quelle est ta :angelic: ?

 

wacko.png

Lien vers le commentaire
Partager sur d’autres sites

ddeml.dll localisé dans System32.

 

Versions :

 

Maxthon 1.5.2 21 unicode

IE : IE 6 (Service pack 2) et IE7 bêta 2 7.0.5096.0 (Service Pack 2)

 

Pardon d'insister, mais je ne comprends toujours pas pourquoi IE m'embête et pas Maxthon :angelic:

 

EDIT : je pensais que ça pourrait provenir d'un réglage de la sécurité au niveau de IE, mais je n'ai rien trouvé...

Lien vers le commentaire
Partager sur d’autres sites

ddeml.dll localisé dans System32.

 

Versions :

 

Maxthon 1.5.2 21 unicode

IE : IE 6 (Service pack 2) et IE7 bêta 2 7.0.5096.0 (Service Pack 2)

 

Pardon d'insister, mais je ne comprends toujours pas pourquoi IE m'embête et pas Maxthon ;)

 

EDIT : je pensais que ça pourrait provenir d'un réglage de la sécurité au niveau de IE, mais je n'ai rien trouvé...

 

Bonsoir,

 

Je ne comprends pas non plus. Maxthon se sert du moteur d'IE comme chacun le sait, donc si cela ne marche pas dans IE Maxthon devrait se poser des questions :angelic:

 

Je pense qu'il faut soumettre le problème sur un forum spécialisé en Ie !

Peux-être voir aussi si ton IE ne nécessite pas un p'tit coup de réparation !

Peux-être voir si la cohabitation des deux Ie, 6 et 7 n'est pas à l'origine du problème ?

 

wacko.png

Lien vers le commentaire
Partager sur d’autres sites

Non justement, comme je l'expliquais dans le premier post, j'ai une machine sous IE 6 et une machine avec IE7, et les deux posent problème. Mais bon, comme tu dis, je vais tenter un forum spécialisé IE.

 

En attendant que je poste ici la solution à mon problème, je te remercie pour ton aide :angelic:

Lien vers le commentaire
Partager sur d’autres sites

  • 4 mois après...

J'ai reçu cette réponse ce soir par mail :

 

Je ne suis pas membre de votre forum.

Néanmoins, auriez-vous la gentillesse de bien vouloir prévenir l'auteur de ce post http://forum.maxthon-fr.com/lofiversion/index.php/t3221.html d'essayer ce code svp :

 

byte[] data = _Client.Request("1", 1, 60000);

Voilà. :lol2:

 

Donc il faut modifier dans le code : "sURL" pour mettre "1".

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.