begin process at 2010 02 10 11:08:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Réseau & Internet

 > 

Client - Serveur

 > 

Socket entre code managé et non managé


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Socket entre code managé et non managé

lundi 9 avril 2007 à 00:21:31 | Socket entre code managé et non managé

iow4

Membre Club
Bonjour,

Je suis entrain de mettre en place une application client serveur. Le serveur ( partie hebergé ) est en C++ non managé ( pour une plus grande compatibilité ) et le client est en Csharp. Le serveur est constament en attente de connexion, dés qu'il reçoit la commande ##FILE## il est censé renvoyer d'autres informations comme la taille du fichier souhaité mais il ne renvoit rien.

Pour me connecter au serveur j'utilise une socket ( en csharp ) :

Socket MySock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                MySock.Connect(ip, Convert.ToInt32(port));
                this .Invoke( new   WriteLog (WriteLogText),  "Connectection à l'hote réussie.");

                //==========================================
                // Envoie de la demande de transaction
                //==========================================
                byte[] buffer = new ASCIIEncoding().GetBytes("##FILE##");
                MySock.Send(buffer);
                this .Invoke( new   WriteLog (WriteLogText),  "Envoie de la demande.");

                //==========================================
                // Récupere la réponse
                //==========================================
                NetworkStream nst = new NetworkStream(MySock);
                StreamReader sr = new StreamReader(nst);
                string reponse = sr.ReadToEnd();

 Or reponse est toujours null.
Pour le code du serveur ( en C++ non managé ) :

while (1)
    {
        cs=accept(s,NULL,NULL);
        if (cs!=INVALID_SOCKET)
        {
            while ((recv(cs,msg,300,0))>0)
            {               
                if (strcmp(msg,"##FILE##")==0) // si la commande envoyé est ##FILE##
                {               
                    w=fopen("Boom.vip","rb");
                    fseek (w, 0, SEEK_END);
                    long size = ftell(w);
                    fseek(w,0,SEEK_SET);
                   
                    send(cs,"##FILESIZE##",12,0);
                    send(cs,(const char*)size,sizeof(size),0);

                    send(cs,"#Begain#",8,0);


Je vous epargne tout l'aspect socket du C++
Vous pouvez trouver le code complet ici : http://phpdebutant.org/wall4468.php

Pourquoi dans mon programme en csharp je ne reçoit rien ?

Merci d'avance pour votre aide



Cette discussion est classée dans : code, serveur, cs, socket, managé


Répondre à ce message

Sujets en rapport avec ce message

Au Secours (Serveur/Client) [ par JCpp ] Sur ce site, je n'ai trouvé aucune Source Server/Client avec plusieurs Client.ci non, Je ne comprends pas pourquoi sa ne fonctionne pas, j'ai bien mi socket pour PDA [ par rossjulian ] Bonjour,j'ai un petit problème au niveau de mon serveur de socket.J'ai créé un application Smart Device (pour mon client) et je n'arrive pas a envoyé Comment [ par creanova2000 ] je desire recuperer le nom ou l'adresse ip de mon serveur automatiquement afin de pouvoir utiliser le nom de mon serveur dans des connection de base d Serveur problème [ par emmanuel9 ] Bonjour à tous, En faite j'ai un peut de mal a fermer mon serveur : ici c'est la fonction run_serveur qui marcheJe précise c'est du c++.net, pareil qu Comment stopper un thread lorsqu'il est bloqué par une fonction bloquante [ par billou_13 ] En voila une question que je me pose depuis très longtemps !En fait, je lance un serveur TCP/IP qui attend des clients en faisant la fonction Socket.A C# : Freeze d'une fenetre messenger avec un serveur de socket [ par airforce92 ] Bonjour,J'essaye de créer un un client "MSN" avec l'aide             - d un serveur de socket "TcpListener server = <FONT color=#0000 binder plusieurs address en listen sur une socket.... [ par tommz ] en fait, toute... un peu comme sous unix ou je peut faire un bind ANY pour ecouter sur 192.168.0.1, 127.0.0.1 et 10.0.0.1qui sont les trois adresse pa Discussion grâce à la classe Socket [ par ivanoff1 ] Bonjour a tousJ'aimerais vous poser une ou deux questions.Tout d'abord, je voudrais savoir si j'ai bien compris le principe des Socket.1) Le serveur e deconnexion de serveur [ par OxN ] Bonjour j'ai un client qui envoi un message a un serveur. Toutefois je n'arrive pas a deconnecter mon serveur afin de le reconnecter. voici le code d Socket [ par Pierrrot ] Bonjour,J'essaye de développer un module de communication, mais je n'arrive pas a le créer.Je souhaite créer un module qui fait ceci :- Une personnes


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales