2009-07-23 4 views
1

J'ai une application C++ pour surveiller l'ordinateur local et une page Web HTML5 (support hors ligne) pour afficher les statistiques. À l'heure actuelle, mon application envoie des données via le serveur à la page Web, mais cela ne fonctionne que sur Internet. Maintenant, je veux prendre en charge le mode hors connexion complet, j'ai donc besoin de pousser les données directement sur la page Web pour déclencher des événements javascript. Est-ce possible? Et est-ce possible sur des plateformes croisées?Pousser les données de l'application locale au navigateur

+0

Voulez-vous éviter que votre page Web interroge le serveur? Si cela est fait assez fréquemment, cela produira le même effet que si le serveur poussait les données. –

Répondre

0

Si vous travaillez avec Windows, vous pouvez créer un ActiveX qui sera chargé par votre page Web. Les objets ActiveX vivent dans le monde Windows et sont beaucoup plus faciles à communiquer depuis une application Windows.

De nombreux utilisateurs évitent d'installer un ActiveX lorsqu'une page Web le leur demande également, mais puisque vous installez déjà votre application, vous pouvez tout aussi bien installer l'ActiveX vous-même.

Vous pourriez également être en mesure de réaliser cela en utilisant des applets Java, mais je ne suis pas un programmeur Java, donc je ne peux pas le dire avec certitude.

EDIT:

À la lumière de votre édition, vous pouvez essayer ce qui suit: étant donné le fichier HTML du rapport est l'application locale, vous pouvez avoir votre C++ créer un fichier HTML avec les valeurs de rapport requis et magasin il est proche du fichier HTML du rapport chaque fois qu'il y a quelque chose à signaler. Dans la page HTML principale, exécutez une boucle qui chargera le fichier de valeurs dans un iframe, et une fois chargée, extrayez-en les valeurs et utilisez-les dans la page principale du rapport. De cette façon, vous interrogez plutôt que d'être poussé, mais les résultats sont les mêmes et indépendants de la plate-forme.

2

Si l'application C++ et la page Web HTML5 sont sur la même machine, il peut être utile d'ajouter le serveur sur le même PC. mongoose est un serveur léger et facile à utiliser que vous pouvez intégrer dans votre application C++ et diffuser du contenu directement dans le navigateur sans avoir à vous connecter.

Questions connexes