Lire une image jpeg depuis une adresse ip

Soyez le premier à donner votre avis sur cette source.

Vue 6 766 fois - Téléchargée 609 fois

Description

Ce programme C++Builder 6 permettant de lire et d'afficher une image JPeg (couleur 24bits) à partir d'une adresse IP.
il realise les étapes suivante:
ouvre la connexion en envoie la commande au socket distant:
GET /record/current.jpg HTTP/1.0 (crlf)
Accept image/jpeg (crlf)
(crlf)
le suivi des évènements OnRead du socket permets d'accumuler le stream des paquets reçus dans un pStream (TMemoryStream)
apres envoi de l'image le socket distant se déconnecte
l'évenement MainsSocDisconnect déclenche le traitement te la réponse serveur:
  • extraction du Header (composent Memo1)
  • affichage de la taille du jpeg (composant Label)
  • affichage de l'image Composant Image1.


le composant Memo1 fait l'écho des commandes envoyées et du Header de la réponse du socket distant.

Ce Logiciel C++Builder n'utilise aucun module et composant externe à C++Builder et nécessite les composants suivants :

TForm Form1

TClientSocket MainSoc pour la connexion Ip
Tmemo Memo1 echo des infos transmises et reçues

TPanel Panel1 Panneau pour héberger le TImage
TImage ImageResult pour afficher le jpeg reçu

Tpanel Panel2 panneau de contrôle
Tlabel Label1 etiquette : adresse ip de l'image à charger
Label2 etiquette : Commande + Path/Nom-Image + protocole
Label3 etiquette : Port par défaut
Label4 etiquette : Type Doc (Mime)
Label5 etiquette : Size Jpeg chargé en octet
Label6 valeur : Size Jpeg
Label7 Etat Socket = ON /OFF
Label8 etiquette : etat connexion
TButton btnGo commande Load JPeg
Tedit Edit1 adresse ip cible
Edit2 port
Edit3 commande transmise au socket (ligne1)
Edit4 commande transmise au socket (ligne2)

Conclusion :


ce petit outil Builder C++ permet de lire une image jpeg sur une adresse IP.
il fonctionne parfaitement sur réseau local.

Codes Sources

A voir également

Ajouter un commentaire Commentaire
Messages postés
5
Date d'inscription
lundi 8 janvier 2007
Statut
Membre
Dernière intervention
30 août 2013

merci pour le code

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.