begin process at 2010 02 10 06:18:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Réseau & Internet

 > 

dhcp


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

dhcp

vendredi 4 mai 2007 à 22:33:02 | dhcp

baileys57

bonjour,
j'ai un serveur en c++ qui a un reseau en port com et qui relie des pc client par un intercom
les clients doivent booter sur le lan comment changer mon type de reseau pour le faire passer par du rj45 afin de virer l'intercom et le remplacer par un hub?
ps je suis debutant alors ne soyez indulgent avec moi
merci d'avance
voici le code de l'intercom que je veux remplacer :

/*   Serveur des requ^tes intercom.        */
/*            */
/*            */
/* ----------------------------------------------------------------------- */
#include <stdio.h>
#include "etatsean.h"
#include "c_monit.h"
#include "c_monit.ext"
#include "stdbxevt.def"
#include "intercom.h"
#include "ecran.h" /* debug */
 struct _qc
  {
  unsigned char msbh, lsbh, msbl, lsbl ;
  } ;
 struct _dw
  {
  unsigned char msw, lsw ;
  } ;
 union _t
  {
  unsigned long l_value ;
  struct _qc qc ;
  struct _dw dw ;
  } t;

#define TOTRACEUR _asm int 0f3h

static unsigned pgm_word ;

extern _btc _far btc ;


unsigned char debug[80] ;

extern void UsrErr( char *s );
extern void AttendStaIniIcMx(void);

/*****************************************
void debugpw( unsigned pw )
{
   unsigned char intersec;
   unsigned dg ;

   int i ;

   if (!( pw & 0x00FF ))
      sprintf( debug, "Mot d',tat : 0x%X ", pw );
   else
      sprintf( debug, "Volume     : 0x%X ", pw );
   for (i=15 ; i>=0 ; i-- )
      {
      if ( i== 7)
  strcat( debug," " );
      if ( pw & ( 1<<i ) )
  strcat( debug, "1" ) ;
      else
  strcat( debug, "0" ) ;
      }

   UsrErr( debug );
   if ( debug[0] == 'M' )
      {
      scroll( 0, 55, 8, 79, BLEU , 80-55, 1 ) ;
      for ( i=0 ; i<5 ; i++ )
  {
  set_txtcur_pos( 2*i, 56+3 ) ;
  wr_car( BLANC SUR BLEU, '¯' ) ;
  }
      for ( i=0 ; i<9 ; i+=4 )
  {
  set_txtcur_pos( i, 56+17 ) ;
  wr_car( BLANC SUR BLEU, '¯' ) ;
  }

      wr_string( 0, 56, BLANC SUR BLEU, "MM" );
      wr_string( 0, 56+19, BLANC SUR BLEU, "HP D" );
      wr_string( 2, 56, BLANC SUR BLEU, "GL" );
      wr_string( 4, 56, BLANC SUR BLEU, "MA" );
      wr_string( 4, 56+19, BLANC SUR BLEU, "Mx" );
      wr_string( 6, 56, BLANC SUR BLEU, "GB" );
      wr_string( 8, 56, BLANC SUR BLEU, "Mx" );
      wr_string( 8, 56+19, BLANC SUR BLEU, "HP G" );
      set_txtcur_pos( 0, 56+4 );
      _wr_car_rep( BLANC SUR BLEU, 'Ä', 13 );
      set_txtcur_pos( 2, 56+4 );
      _wr_car_rep( BLANC SUR BLEU, 'Ä', 6 );
      set_txtcur_pos( 4, 56+4 );
      _wr_car_rep( BLANC SUR BLEU, 'Ä', 13 );
      set_txtcur_pos( 6, 56+4 );
      _wr_car_rep( BLANC SUR BLEU, 'Ä', 6 );
      set_txtcur_pos( 8, 56+4 );
      _wr_car_rep( BLANC SUR BLEU, 'Ä', 13 );
      wr_string( 0, 56+10, BLANC SUR BLEU, "ÂÄÄÂ" );
      wr_string( 1, 56+10, BLANC SUR BLEU, "³  ³" );
      wr_string( 2, 56+10, BLANC SUR BLEU, "?"    );
      wr_string( 3, 56+10, BLANC SUR BLEU, "³  ³" );
      wr_string( 4, 56+10, BLANC SUR BLEU, "?  Ã" );
      wr_string( 5, 56+10, BLANC SUR BLEU, "   ³" );
      wr_string( 6, 56+10, BLANC SUR BLEU, "?" );
      wr_string( 7, 56+10, BLANC SUR BLEU, "³  ³" );
      wr_string( 8, 56+10, BLANC SUR BLEU, "ÁÄÄÁ" );
      intersec = ' ' ;
      if ( pw & MM )
  intersec = 'Ä' ;
      set_txtcur_pos( 0, 56+6 ) ;
      _wr_car_rep( BLANC CLAIR SUR BLEU, intersec, 2 ) ;
      intersec = ' ' ;
      if ( pw & GL )
  intersec = 'Ä' ;
      set_txtcur_pos( 2, 56+6 ) ;
      _wr_car_rep( BLANC CLAIR SUR BLEU, intersec, 2 ) ;
      intersec = ' ' ;
      if ( pw & MA )
  intersec = 'Ä' ;
      set_txtcur_pos( 4, 56+6  ) ;
      _wr_car_rep( BLANC CLAIR SUR BLEU, intersec, 2 ) ;
      intersec = ' ' ;
      if ( pw & GB )
  intersec = 'Ä' ;
      set_txtcur_pos( 6, 56+6  ) ;
      _wr_car_rep( BLANC CLAIR SUR BLEU, intersec, 2 ) ;
      intersec = ' ' ;
      if ( pw & INMX )
  intersec = 'Ä' ;
      set_txtcur_pos( 8, 56+6  ) ;
      _wr_car_rep( BLANC CLAIR SUR BLEU, intersec, 2 ) ;

      intersec = ' ' ;
      if ( pw & OUTD )
  intersec = '³' ;
      set_txtcur_pos( 2, 56+13 ) ;
      wr_car( BLANC CLAIR SUR BLEU, intersec );

      intersec = ' ' ;
      if ( pw & OUTG )
  intersec = '³' ;
      set_txtcur_pos( 6, 56+13 ) ;
      wr_car( BLANC CLAIR SUR BLEU, intersec );

      intersec = ' ' ;
      if ( pw & STEREO )
  intersec = '³' ;
      set_txtcur_pos( 5, 56+10 ) ;
      wr_car( BLANC CLAIR SUR BLEU, intersec );

      }
}
*********************************/


void ProgIc( unsigned pw )
{
/*debugpw( pw ) ;*/
   EvMulPosW( IMMEDIAT, BASE_MAN_IC + ICMUL1_WEVT, pw ) ;
}

void ProgMx( unsigned char set_reset )
{
   EvMulPosB( IMMEDIAT, BASE_MAN_IC + MXMUL2_BEVT, set_reset ) ;
}

void InitIc()
{
   unsigned niveau ;

   ProgIc( pgm_word = STEREO ) ;
   (void) AttendStaIniIcMx();
   niveau = 0x8F00 ;
   ProgIc( niveau | PDG ) ;
   (void) AttendStaIniIcMx();
}


void LowEntry( unsigned char cmde )
{
   char ordre_terminal ;

   switch ( cmde )
      {
      case RSTART_MA : ordre_terminal = SET_MA ; break ;
      case RABORT_MA : ordre_terminal = RST_MA ; break ;
      }
   EvMulPosB( IMMEDIAT, BASE_MAN_IC + MANMUL0_BEVT, ordre_terminal ) ;
}

void TraiterRequeteIcMx()
{
   unsigned char messerr[25] ;
   unsigned level_word ;

   while ( BxRdL( R_BOXL, &t.l_value ) )
      {
      switch ( t.qc.msbh )
  {
  case RSTART_MM:
     pgm_word |= MM ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RABORT_MM:
     pgm_word &= ~MM ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RSTART_WN:
     pgm_word |= GB ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RABORT_WN:
     pgm_word &= ~GB ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RSTART_MA:
     pgm_word |= MA ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     LowEntry( RSTART_MA ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RABORT_MA:
     pgm_word &= ~MA ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     LowEntry( RABORT_MA ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RON_FROMMX:
     pgm_word |= INMX ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case ROFF_FROMMX:
     pgm_word &= ~INMX ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RON_TOMX:
     pgm_word |= OUTD ;
     pgm_word |= OUTG ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case ROFF_TOMX:
     pgm_word &= ~OUTD ;
     pgm_word &= ~OUTG ;
     ProgIc( pgm_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RLEVELS:
     level_word = ( t.qc.lsbl << 8 ) | ( t.qc.msbl ) ;
     ProgIc( level_word ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RSET_MX:
     ProgMx( WR_MX ) ;
     (void) AttendStaIniIcMx();
     break ;

  case RRST_MX:
     ProgMx( RST_MX ) ;
     (void) AttendStaIniIcMx();
     break ;

  default :
     sprintf( messerr, "ReqIcMx %d inconnue", t.qc.msbh ) ;
     UsrErr( messerr );
  }
      }
}


vendredi 4 mai 2007 à 23:10:13 | Re : dhcp

emmatopiak

Salut,

Si j'ai bien compris, ton programme marche pour un reseau donné (intercom) et tu voudrais passer a du RJ45 et ça marche plus.

Well well well

c'est long lol ton code.
Bref
En fait par RJ45 tu entends le protocole Ethernet, je connais pas intercom mais ça doit etre très différent d'Ethernet donc je pense que y'aura pas de moyen facile d'adapter ton code et qu'il faudrait soit tout refaire soit trouver un logiciel qui fait déjà l'adaptation entre les deux couches réseaux.

C'est tout ce que je peux te dire pour l'instant, aiguille moi ?
@++


Cette discussion est classée dans : word, void, bleu, blanc, wr


Répondre à ce message

Sujets en rapport avec ce message

Création d'un menu en langage C [ par kimokim ] Salut les programmeurs!! J'aimerai bien avoir une solution à un problème que j'ai affronté lors de mon évolution dans mon programme en langage C, qui superposition de couleur... [ par jojomillenium ] Hello! Je dessiner en 3D des rectangle en openGL, pare exemple un bleu et un blanc du style:            |          |         \/ _____________ |      B parcours en profondeur dans un graphe [ par Tavarez59282 ] Bonjour j'ai un sujet de tp à realiser sur les graphes à l'aide de listes d'adjacence et j'ai un incident de segmentation dans mon code lorsque j'exec parcourir un labyrinthe [ par emmy75fr ] <fo Arbre Lexicographique [ par LordBob ] Bonjour a tous,voila en fait j'ai un exercice d'algorithmique ou je dois créé un arbre l'exicographique, voici la structure de ma classe:class ArbreLe heritage [ par redha_0172 ] salut tout le monde,voici mon problème:j'ai les classes suivantes: Personne{.....virtuel void afficher();}Salarie : public Personne{.................. Généricité et interface en C ... [ par LocalStone ] Salut à tous ! Alors voilà ... Je me demandais tout à l'heure comment faire pour avoir une interface en C (une sorte d'objet abstrait dont on ne conna glutTimerFunc [ par iam_myst ] Bonjour a tous Je souhaite utiliser la fonction glutTimerFunc sur une méthode de classe : void Maclasse::dessiner(int a) {       blablabla... } Void M [C] Généricité et cast automatique. [ par LocalStone ] Salut, Alors voilà ... Je me posais la question suivante : existe-t-il un moyen en C de gérer la généricité de manière transparente ? Je m'explique .. intruction zappee ! [ par chris5874 ] Bonjour,j'ai commence un petit programme en C. Malheureusement etant debutant, j'ai du surement negliger un detail car une instruction qui est censee


Nos sponsors


Sondage...

Comparez les prix

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,811 sec (4)

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