IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres IDE Pascal Discussion :

Dans une application desktop afficher une form d'un service Windows [CodeTyphon]


Sujet :

Autres IDE Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Dans une application desktop afficher une form d'un service Windows
    Bonjour,

    J'ai un service windows qui a un serveur TCP intégré (composant TidTCPServer plus précisément).

    J'ai une application desktop qui se connecte au serveur TCP du service : OK, tout fonctionne. Le serveur reçoit bien les ordres de l'application desktop et interprète bien les ordres.

    J'ai créé une commande sur le serveur TCP qui fait que lorsque l'appli envoie cette commande serveur, le service crée une form : OK, tout fonctionne. Enfin, je pense car pas de message d'erreur dans le fichier de log du service

    Maintenant, j'aimerais, dans mon application desktop, pouvoir afficher la form créée dans le service windows via le serveur TCP (je ne sais pas si je suis très clair ). En gros, ce que j'aimerais faire c'est une sorte d'affichage déporté. Comme j'ai plusieurs services, chaque service ayant un serveur TCP intégré, avec une appli desktop je veux pouvoir gérer à distance les services via du TCP mais sans avoir à développer dans l'appli desktop une form pour chaque service. C'est pour cela que j'ai besoin d'avoir l'affichage de la form du service dans mon appli desktop via du déporté. En plus, je crois savoir qu'un service windows ne peut pas afficher de form.

    Bien sûr, les form de chaque services (à terme j'aurais plusieurs services) sont différentes des unes des autres et contiennent différents contrôles : TEdit / Tcaption et Tbutton pour le moment. Je dois pouvoir donc saisir des données et lancer un traitement par l'appui sur le bouton sur chaque form.

    Si j'arrive à faire fonctionner cela, le but est d'avoir l'application sur un terminal RF (avec Windows installé et connecté réseau en Wifi) et ainsi scanner les informations pour remplir les zones des forms de chaque service.

    Je n'arrive pas à trouver des infos sur le net (ou bien je suis une bille pour les rechercher ce qui est plus que probable).

    Est-ce que quelqu'un a une piste ou une idée ?

    Je vous donne quand même le but complet du projet : piloter, via des terminaux RF, un réseau de modélisme ferroviaire en digital. Les terminaux permettront de scanner des codes barres et, via les services sur un serveur, les informations scannées feront des actions sur le réseau. Eh oui, je "joue" au p'tit train à mon age

    D'avance merci.

    Cdt

    Laurent

  2. #2
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 159
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 159
    Par défaut
    Salut,

    ça serait pas ça le truc que tu cherches ?

    Nom : info_service.jpg
Affichages : 240
Taille : 34,0 Ko

    (L'infobulle apparait en sélectionnant le bouton [ ? ] et en cliquant sur le texte de la checkbox "Autoriser blabla...")

    Mais je n'en dirai pas plus, je suis sous Linux maintenant, alors les services...

  3. #3
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 466
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 466
    Par défaut
    Hello,

    Je pense que la proposition de Jipété permet d'afficher des forms uniquement sur l'ordinateur qui exécute le service, mais c'est à vérifier.
    Quant à la capacité pour un service d'afficher une form, il faut vérifier aussi mais par nature un service n'a pas besoin de form pour rendre un... service. Il est censé recevoir des commandes/données de l'extérieur et renvoyer d'autres données au composant qui le requête.

    Il faudrait peut-être revoir ton approche : pourquoi générer des form côté serveur, ce qui est typiquement fait côté client ? L'approche voudrait que tu développes les forms côté client, qui gère la communication avec le service, récupère les données de celui-ci et les affiche comme il faut.
    Sauf si il y a des contraintes que je n'ai pas comprises et qui n'ont pas été exprimées.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Justement, c'est ce que voulais éviter : avoir une application "lourde" côté client qui contient toutes les définitions des écrans de chaque service. L'application cliente est destinée à être installé sur un terminal RF.

    Je pensais que le service pouvait définir une form et que l'affichage de cette form pouvait se faire via une connexion TCP dans une appli distante. J'étais parti sur le principe d'avoir comme une frame dans l'appli cliente et que la frame affichée était en fait la form du service. Un peu comme les accès à distance du style TeamViewer, UltraVnc ou TSE. J'avais vu cette pratique là où je travaille : les terminaux ne font qu'afficher les forms générées par les services qu sont sur le serveur via une connexion TCP. Je pensais pouvoir le reproduire pour mon besoin pour mon hobby.

    Je vais peut être effectivement revoir cette gestion : il peut y avoir des enchaînements de form (menus, saisies, ...) mais pour chaque service, ce sont les mêmes forms ... je peux donc envisager d'intégrer tous les écrans dans l'appli qui sera installée sur le terminal (j'espère que ce ne sera pas trop lourd par rapport aux capacités du terminal).

    Merci.

    Cdt

    Laurent

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 940
    Billets dans le blog
    6
    Par défaut
    Peut-être les services peuvent-ils transmettre des équivalents de fichiers dfm aux clients qui recréeront les fiches correspondantes ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je profite de mes vacances pour donner des nouvelles

    Je vais changer de type de traitement. Comme ce sont toujours les mêmes modèles d'écran, je vais avoir un seul écran générique au niveau de l'appli cliente. Le serveur transmettra uniquement les informations concernant le service concerné et l'appli cliente renverra les informations saisies uniquement. Ainsi, les données réseau seront plus "lights".

    Merci à tous pour vos suggestions.

    Cdt

    Laurent

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment afficher une page html depuis une application java?
    Par doudou7777 dans le forum Général Java
    Réponses: 3
    Dernier message: 15/04/2014, 11h55
  2. Réponses: 1
    Dernier message: 29/07/2009, 10h01
  3. Réponses: 5
    Dernier message: 28/10/2006, 14h50
  4. [Afficher une image] Comment afficher une impression écran ?
    Par mnina dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 2
    Dernier message: 10/11/2005, 10h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo