Bonjour,
Je voulais savoir à quoi servait exactement Indy...
Et qu'est-ce qu'on peut faire avec...
J'éspère que quelqu'un pourra m'aider.
Merci à bientot !
Bonjour,
Je voulais savoir à quoi servait exactement Indy...
Et qu'est-ce qu'on peut faire avec...
J'éspère que quelqu'un pourra m'aider.
Merci à bientot !
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
Ouai...
Merci, mais ça m'aide pas beaucoup... si ce n'est que :
Indy est une librairie de composants Open Source disponible pour Delphi et Kylix (Linux). C'est un ensemble d'environ 70 objets prenant en charge la majorité des protocoles client et serveur.
Concretement ça donne quoi???
Merci !
Modérateur Delphi
Le guide du bon forumeur :
- Les règles du forum tu liras
- La FAQ et les tutoriels tu consulteras
- La fonction Recherche tu utiliseras
- Google tu vénèreras
__________
Rayek World : Youtube Facebook
Oui Mais ça sert à quoi???
Sa gère quoi?
les protocoles internet/réseau sont un ensemble de règles régissant la communication entre deux ou plusieurs unités réseau (ton PC avec un serveur Web, ton PC avec un autre PC sur internet ou même dans ton réseau local).
il existe beaucoup beaucoup beaucoup de protocoles comme ça. les composant indy encapsulent quelques uns de ces protocoles, les plus utilisés je crois bien.
pour le rôle de chaque protocole:
TCP:assure le transport des datagrammes au niveau de la couche 4 OSI.
IP:assure la délivrance des paquets de données au niveau de la couche 3 OSI.
POP3:permet la lecture des emails sur un serveur de messagerie.
SMTP:permet l'envoi des emails vers un serveur de messagerie.
UDP:homologue de TCP, mais n'assure aucune vérification.
...
voilà j'espère ne pas trop m'être trompé.
voir pour plus de précisions. comme tu le verras le sujet est assez vaste.
Merci, mais je sais ce que c'est qu'un protocol etc etc...
Ce que je veux savoir, c'est :" dans quel but utiliser indy?".
En faite, je suis en train de developper un programme de gestion d'appareil, qui peut s'installer sur plusieurs pc, j'ai donc créer un système qui permet d'afficher "Nouveau evenement" lorsqu'il y a des nouveaux evenements sur la Bdd (Serveur Firebird) afin que sur chaque pc, on voient à tout moment les nouvelles modifications.
En faite, ce que j'ai fais, pour controler les nouveaux enregistrement sur la bdd c'est tout simple :
Si je suis amené à ajouter un enregistrement sur la bdd, je l'ajoute aussi dans un fichier Ini (ainsi que plusieurs autres paramètres bien précis...). Ensuite, j'utilise un Timer qui viendra comprarer le nombre d'enregistrement de la bdd et ceux de mon fichier Ini... de cette facon, chaque pc verra les nouveaux evenements.
Je voulais juste savoir si Indy pouvait faire la même chose...
Merci !
Euh, selon c'est toute ta méthode qui est à revoir car là tu t'embêtes vraiment pour rien. Pour ma part j'aurai résolu le problème bien plus simplement : dans ta table tu ajoutes une date de création renseignée au moment de la création avec la date en cours. Ensuite sur chacun de tes PC lors du premier chargement tu détermines quelle est la dernière date d'ajout. Et ensuite, à intervalles réguliers, tu lance une requête qui recherche tout les nouveaux éléments insérés après ta date de référence. Et s'il y a des nouveaux éléments ben tu fais comme actuellement et tu n'oublies pas d'actualiser ta date de dernier ajout.
Sinon Indy s'utilise généralement quand tu dois implémenter ton propre fonctionnement client-serveur, quand tu dois faire de la gestion de mail, connexion FTP, HTTP, HTTPs, etc...
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
Pour faire discuter via TCP/IP un ou plisuers programme (par exemple un tchats).
Pour faire des logiciels de mails (Gérer les protocoles permettant d'envoyé et recevoir les mails)
Pour faire un client FTP.
Pour faire des requêtes vers des sites webs.
Etc...
Le seul élément intéressant serait plutôt d'avoir un serveur qui va appeler tes logiciels clients afin de leur dire qu'il y a eu une mise à jours d'un des logiciels.
Cela sera peut être mieux que l'utilisation d'un fichier Ini.
Dès qu'un logiciel fait un ajout, il le communique au serveur et le serveur renvoi aux autres clients une informations de mise à jours.
Les composants sont TIdTCPServer et TIdTCPClient
Modérateur Delphi
Le guide du bon forumeur :
- Les règles du forum tu liras
- La FAQ et les tutoriels tu consulteras
- La fonction Recherche tu utiliseras
- Google tu vénèreras
__________
Rayek World : Youtube Facebook
Firebird est doté d'un système d'alertes que tu peux envoyer à partir de la BD vers les clients avec la commande POST_EVENT dans les Procédures Stockées et les Triggers.
regarde un peu cette discussion.
tu peux aussi faire la mêche chose avec les composants indy. plus précisément, un couple de composants TidUDPClient/TIdUDPServer qui enverra des paquets de diffusion dans le réseau pour signaler les modifications apportées.
Ok...,
Mais une fois que le trigger est créer, comment fait-on pour réceptioner l'info??
Ce que je ne comprend pas, c'est que le trigger lorsqu'il est créer, il restera sur la base, alors à ce moment la, comment faudra-til faire pour Envoyer l'info POST_EVENT???
Merci de votre aide !
dans ta base, pour chaque table tu peux définir des triggers (avant/après insertion/edition/suppression).
dépendamment de l'action dont tu veux être notifié, tu vas mettre l'instruction POST_EVENT dans l'un de ces triggers, avec un message dépendant de l'action.
du côté de delphi, en fonction des composants utilisés tu auras un qui gère les EVENTS firebird. pour les composants IBX il s'agit de IBEvents.
une fois l'évènement déclenché dans la BD, le composant récupère la chaine postée et c'est à toi d'effectuer les traitements conséquents.
ne lésine pas sur la touche
La touche f1 ne fonctionne pas je suis sous vista.
Je n'arive pas à créer ce trigger avec ce code :
Que faut til faire?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 SET TERM !! ; CREATE TRIGGER POST_NEW_ORDER FOR NOMDEMATABLE ACTIVE AFTER INSERT POSITION 0 AS BEGIN POST_EVENT new_order; END !! SET TERM ; !!
Merci!
que se passe t'il ? "je n'arrive pas" n'est pas très explicite.
déjà qu'utilises tu pour administrer ta base de données ? isql ?
as tu changé NOMDEMATABLE avec le nom de la table pour laquelle tu désires créer le trigger ?
J'ai essayé d'ajouter ce code :
avec IBEasy+ avec "Outil > SQL Mode Expert".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 SET TERM !! ; CREATE TRIGGER POST_NEW_ORDER FOR NOMDEMATABLE ACTIVE AFTER INSERT POSITION 0 AS BEGIN POST_EVENT new_order; END !! SET TERM ; !!
Mais j'ai une erreur "Unexepected end of command -line 7, Column 12"...
Voila j'éspère que ça peut vous en dire plus...
Merci.
Si si c'est possible de faire fonctionner l'aide de Delphi 7 sous Vista, il suffit tout simplement d'installer le WinHlp32.exe qui se trouve sur ici.
PS pour admins : j'ai l'impression de me répéter souvent sur ce point, peut-être faudrait-il l'intégrer dans la
La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème
Pas de sollicitations techniques par MP -
Génial !!
Merci !
Pour info, j'ai réussi à créer le trigger, j'ai ajouté sur ma form un IBEvent j'ai ajouter ma bdd dans la propriété Database.
Sur l'evenement "OnEventAlete" j'ai ajouté un showmessage.
Mais je n'arrive pas a faire afficher le showmessage, je vais regarder dans l'aide avec F1 !
Sur mon IBEvent, j'ai aussi ajouté Dans la propriété Events new_order.
Mais lorsque j'ajoute un enregistrement, rien ne ce produit... Pourtant, je fais bien un "CommitRetaining"...
Merci de votre aide.
Je suis toujours bloqué... Si quelqu'un pouvait m'aider...
Pour ceux qui pourront m'aider, voici une capture d'écran de mon trigger sous IBEasy+
http://georges86.free.fr/Prog/Trigger.jpg
Je pense qu'il est bien créer, mais je veux en être sur...
Car je n'intercepte aucune alerte.
Merci !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager