Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Statut d'une socket en C++

int0x21, le mardi 1 avril 2003 à 10:44:07
Hello all,
Voila mon but est de déterminer,quelle est le statut d'une socket seulement en le faisant disons manuellement sans utiliser le composant activeX de Builder 5.En fait j'aimerais savoir comment fait la composant pour savoit le statut de la socket car je suis entrain de créer une classe de socket qui fera la meme chose (en gros) que cette activeX plus quelque trucs en plus.

De plus étant un débutant en C++ j'aimerai savoir comment on fait pour instancier une classe dans un fichier principal main(la classe se situant dans un fichier externe).Que faut t-il insérer,que faut t-il rajouter dans l'include.
Merci de votre contribution.
Bye
Répondre à int0x21  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
marvinrouge, le mardi 1 avril 2003 à 10:51:30
***Classe.hpp***

class Toto {
public:
Toto();
Toto(int i);
Toto(const Toto&);
void m();
private:
int n;
};

***Classe.cpp***
#include "Classe.hpp"

Toto::Toto() { // constructeur sans argument
n= 0;
}
Toto::Toto(int i) { // constructeur avec un entier en argument
n = i;
}

Toto::Toto(const Toto& t) { // constructeur DE COPIE
if (&t!=this) // pour ne RIEN faire si on écrit a =a; => GROS DANGERS si champs dynamlqiues dans la classe ...
{
n = t.n;
}
return *this;
}

Toto::m() {

}

***Main.cpp***
#include "Classe.hpp"

void main(void) {
Toto t1; // variable 'automatique' => destruction automatique
Toto* t2 = NULL; // variable 'dynamique' => allocation (new) et destrcution (libération mémoire par delete) à la charge du développeur
t2 = new Toto(); // appel u constrcuteur sans arguments

Toto* t3 = NULL;
t3 = nrw Toto(4);

Toto t4(t1);

Toto* t5 = NULL;
t5 = nrw Toto(t1);

if (t2!=NULL) {
delete t2;
t2 = NULL; // facultatif mais FORTEMENT conseillé
}
if (t3!=NULL) {
delete t3;
t3 = NULL; // facultatif mais FORTEMENT conseillé
}
if (t5!=NULL) {
delete t5;
t5 = NULL; // facultatif mais FORTEMENT conseillé
}
}
Répondre à marvinrouge

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
int0x21, le mardi 1 avril 2003 à 11:30:04
Merci bien de ta réponse !
Bye.
Répondre à int0x21

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 marvinrouge, le mercredi 9 avril 2003 à 21:38:53
de rien.

marvinrouge
Répondre à marvinrouge

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
sebsauvage, le mardi 1 avril 2003 à 10:56:05
Si c'est sous Windows, tu peux taper directement dans l'API Winsock.
http://www.vbip.com/winsock-api/resources/msresources.asp
Répondre à sebsauvage

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
int0x21, le mardi 1 avril 2003 à 11:56:02
Merci à toi pour ce lien.
J'ai omis de préciser que je développe sous windows XP avec l'EDI C++ Builder 5 mais je suis entrain de développer mes propres classes pour gérer la création de sockets de différents types(TCP,UDP,RAW,ICMP...).Cepandant je ne sais pas si tu as dejà travaillé avec cet EDI ou DELPHI(c'est du pareil au même) mais lorsque tu utilise un composant TTCP (qui est en fait un activeX: mswinsck.ocx),alors ton programme ne marche que sur ta bécane.Si tu l'execute sur une autre box on a droit au message d'erreur:"classe non inscrite".
D'ou ma motivation de réécrire des classes équivalentes en C++.
Cepandant je me demandais un truc:
Comment fait le composant pour savoir le statut d'une socket à un moment donné?(par exemple losqu'in fait TCP1->State;).
Toi par exemple pour savoir si une socket est en écoute ou pas tu ferais comment ? tu tente un listen et si ca marche pas c'est que la socket est en écoute???
Merci beaucoup.
Bye.
Répondre à int0x21

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
sebsauvage, le mardi 1 avril 2003 à 12:12:14
En fait sous Windows je suis toujours passé par TTCP (Delphi).
Je n'ai fait de la programmation socket pur que sous Unix.

Je n'ai jamais tapé dans l'API Winsock.
Je présume qu'il y a des callbacks pour le changement d'état ?
Répondre à sebsauvage

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
int0x21, le mardi 1 avril 2003 à 17:47:14
Yo SebSauvage,
Justement c'est tout l'objet de mon interrogation.J'aimerais resoudre ce problème une bonne fois pour toute.Je ne trouve pas ce que je veux sur le net...
Bye
Répondre à int0x21

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
sebsauvage, le mardi 1 avril 2003 à 18:01:09
Tu as regardé dans la doc de l'API Winsock ?
Sinon Google devrait ramener des résultats:

par exemple avec les mots (essayer des combinaisons):
winsock api C++ example tutorial examples tutorials sockets windows
Répondre à sebsauvage

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
int0x21, le mardi 1 avril 2003 à 18:25:13
Yo,
Bien sur j'ai plein de tuts la dessus mais aucun ne correspondait précisément à ma requete.
Merci quand même.
Bye
Répondre à int0x21
Problème avec statut de contributeur ! (Résolu) Hello à tous ! Voilà mon problème: J'ai reçu le statut de contributeur cette nuit, cela s'affiche dans mon profil donc à ce niveau aucun problème. Cependant j'ai lu dans la FAQ qu'il m'était possible de modifier n'importe... www.commentcamarche.net/forum/affich-9708682-probleme-avec-statut-de-contributeur
Montée d'échelon dans la convention SYNTEC (Résolu) Bonjour, Je suis au sein d'une SSII qui est sous la convention collective Syntec. Je suis entrée dans cette société en janvier 2004 avec un statut de cadre, une classification IT 2.1 et un coefficient de 115. Lors de mon entrée dans la société,... www.commentcamarche.net/forum/affich-7071619-montee-d-echelon-dans-la-convention-syntec
[CCM] Qui sont les contributeurs ? Comment participer ? Qui sont les contributeurs ? Comment devenir contributeur ? Obtenir le statut de contributeur Rejoindre la communauté des contributeurs Dois-je avoir des connaissances particulières ? Comment participer Les articles de la FAQ CCM Mise en... www.commentcamarche.net/faq/sujet-7266-ccm-qui-sont-les-contributeurs-comment-participer
[Overclocking] Plateforme Intel socket 478MISE EN GARDE Les manipulations décrites ci-dessous sont dangereuses pour votre matériel et la stabilité de votre système. CCM décline toute responsabilité en cas de problème survenu suite à l'application de cet article ! D'abord, il faut avoir un... www.commentcamarche.net/faq/sujet-1158-overclocking-plateforme-intel-socket-478
Que fait un fork() ?...ou le petit fork() illustré.... Introduction Lancement du père Le fork Maîtriser le fil d'exécution du père et celui du fils Les variables et les descripteurs de fichiers La synchronisation La fin Notes et... www.commentcamarche.net/faq/sujet-10611-que-fait-un-fork
Statut sur le site (Résolu)Bonjour, comment se passe le changement de statut sur ce site (comment choisir discussion résolue ou pas?) merci www.commentcamarche.net/forum/affich-6247812-statut-sur-le-site
Contributeur (Résolu)Bonjour à toutes et tous. Fidèle à ma devise, j'aimerais apporter mon modeste savoir au plus grand nombre. Et quoi de mieux que la base de connaissance pour ça! Je souhaiterais donc obtenir le statut de contributeurCCM. D'avance merçi à... www.commentcamarche.net/forum/affich-2736792-contributeur
[Carte mère] remplacement = écran noir (Résolu)Bonjour, j'avais une carte mère Asrock K7S8X avec un Sempron 2400+ J'ai changé la CM (car HS) par une MSI K7T266 Pro2. Mais lorsque je démarre le PC, j'ai un écran noir et aucun "bip!". J'ai vérifié les 2 socket, ce sont des socket... www.commentcamarche.net/forum/affich-2801511-carte-mere-remplacement-ecran-noir
Télécharger BIOS pour 915-A (V1.1)Cette carte mère, socket 775 bien qu’un peu dépassée n’en reste pas moins intéressante du fait qu’elle est a un socket775. Cette version de son BIOS apporte des changements considérables à son fonctionnement : 1. Fixe M0 stepping P4EE CPU qui ne peut... www.commentcamarche.net/telecharger/telecharger-34057143-bios-pour-915-a-v1-1
Mcad 5-Port 10/100/1000 Mops Switch (89277)Type:Switch,Indicateurs de statut:speed,collision LED's,Modes de communication:Full-Duplex,Nb. de ports RJ-45 10/100 Mbps: ,Nb. de ports RJ-45 10/100/1000Mbps:5 RJ-45,Nombre total de ports:5,Standards réseau supportés:IEEE 802.3,IEEE 802.3u,IEEE... www.commentcamarche.net/guide-achat/mcad-5-port-10-100-1000-mops-switch-89277-662119-fiche-technique
Mcad 48-Port 10/100 Mbps Rackable Option 2 Modules Switch (89296)Type:Switch,Indicateurs de statut:speed,collision LED's,Modes de communication:Full-Duplex,Nb. de ports RJ-45 10/100 Mbps:48 RJ-45,Nb. de ports RJ-45 10/100/1000Mbps: ,Nombre total de ports:48,Standards réseau supportés:IEEE 802.3,IEEE... www.commentcamarche.net/guide-achat/mcad-48-port-10-100-mbps-rackable-option-2-modules-switch-89296-662161-fiche-technique
Mcad 24-Port 10/100/1000 Mbps Switch (89293)Type:Switch,Indicateurs de statut:speed,collision LED's,Modes de communication:Full-Duplex,Nb. de ports RJ-45 10/100 Mbps: ,Nb. de ports RJ-45 10/100/1000Mbps:24 RJ-45,Nombre total de ports:24,Standards réseau supportés:IEEE 802.3,EEE 802.3U,IEEE... www.commentcamarche.net/guide-achat/mcad-24-port-10-100-1000-mbps-switch-89293-662247-fiche-technique
Introduction à la mise en place d'un IntranetStatut de ce document Ce document expliquant comment mettre en place un intranet sous une machine fonctionnant avec Linux a été réalisé en partenariat avec www.tldp.org/, dont le webmaster (Michel Maudet) est l'auteur du document original... www.commentcamarche.net/contents/intranet/resintro.php3
Programmation réseau - Les socketsIntroduction aux sockets La notion de sockets a été introduite dans les distributions de Berkeley (un fameux système de type UNIX, dont beaucoup de distributions actuelles utilisent des morceaux de code), c'est la raison pour laquelle on parle... www.commentcamarche.net/contents/sockets/sockintro.php3
Les fonctions de l'API SocketLes fonctions des sockets en détail La fonction socket() La création d'un socket se fait grâce à la fonction socket() : int socket(famille,type,protocole) famille représente la famille de protocole utilisé (AF_INET pour TCP/IP utilisant une... www.commentcamarche.net/contents/sockets/sockfonc.php3