Bonjour, je vouvrai que mon programme puisse lire et envoyer le fichier par tcp/ip; auriez vous une idée.
Merci
Bonjour, je vouvrai que mon programme puisse lire et envoyer le fichier par tcp/ip; auriez vous une idée.
Merci
J'ai regardé rapidement ton source, cela à l'air globallement bon, mais quel est le problème ?
De plus et si j'ai bien compris, le serveur retourne les données recués, c'est bien ca ?
D'autre part, quelques remarques (car rien ne saurait être parfait du premier coup).
1/ L'adresse IP et le port où se connecter est en dur dans le code, cela manque un peut de paramètrage par la ligne de commande mais je suppose que cela viendra ensuite
2/ Il me semble bizarre de faire l'ouverture du socket dans le constructeur. J'aurai plutôt vu une fonction genre (Connect() à ta classe qui acceppte 2 paramètres (le port et l'IP) et qui retourne une erreur en cas de problème. Tel que tu le fait, l'objet client_gps est inutilisable en cas d'erreur de connexion et pire encore, tu ne le sais pas.
3/ Dans ton appel recv(gps,buffer,513,0), j'écrirai plutôt recv(gps,buffer,sizeof(buffer),0). Ainsi si tu modifie la taille de ton buffer de réception, pas de problème.
4/ Dans ton constructeur, si WSAStartup() échoue, tu fais quand même la création du socket, si la création du socket échoue, tu fait quand même la modification des options sur le socket, si la modification des options échoue, tu tentes quand même la connexion. Cela manque un peu de traitement d'erreur cette histoire
Merci pour les conseils, je vais voir à faire les modifications nécessaire.
En fait,il me faudrait une fonction pour pouvoir lire un fichier type texte et l'envoyer du cient en recréant et reécrire le fichier sur le serveur.
Ja modifié mon programe afin de pouvoir atteindre mon objectif mais il y a un truc que ne fonctionne pas et je ne vois pas ce que cela pourrait être.
Si tu pouvais être plus précis et dire quand ça plante
J'obtien sa à la compilation (sous visual C++ 2005) et je ne vois pas ce que peut etre l'erreur.
c:\documents and settings\sr\mes documents\client projet gps 22\classe.h(31) : error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque*: C++ ne prend pas en charge int par défaut
c:\documents and settings\sr\mes documents\client projet gps 22\classe.h(31) : warning C4183: 'echange'*: type de retour manquant*; fonction membre retournant 'int' prise par défaut
c:\documents and settings\sr\mes documents\client projet gps 22\source.cpp(61) : error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque*: C++ ne prend pas en charge int par défaut
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