Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Downloaden

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
22.06.2006, 14:01 Uhr
-Biohazard-



Hallo Leute,
ich habe ein kleines Problem mit meinem Server-Client-Programm. Ich habe schon im Board gesucht, fand zwar einen Beitrag, der mir jedoch nicht weiterhelfen konnte. Ich probiere mit meinem Programm Daten zu übertragen. Zwar ist die Datei, die am Ende herauskommt, gleichgroß wie die Quelldatei, hat aber, anders als im Normalfall, kein Icon und beim Öffnen kommt eine Fehlermeldung - sprich: sie ist beschädigt. Ich habe über den Editor die Inhalte beider Dateien schon angeguckt: im Unterschied sind viele Zeichen anders, nur das Grobe stimmt
Der Server:

Code:
FILE * fh_out = fopen( "unwise.exe", "wb" );
BYTE Chunk[256];
double realsize; // gesamte Dateigröße
double readbytes; // gelesene Bytes
char rs[RCVBUFSIZE]; // realsize als Char
sd = recv( fd, rs, RCVBUFSIZE, 0 );  
realsize = atof( rs );
while ( ( readbytes < realsize ) && ( sd > 0 ) )
{
  readbytes = ftell( fh_out ); // Datenzeiger ermitteln
  if ( readbytes < realsize ) // solange die gelesenen Bytes unter der Dateigröße sind
   {
      sd = recv( fd, Chunk, 256, 0 ); // empfangen
      fwrite( Chunk, 256, 1, fh_out );
    }
}
fclose( fh_out );



Der Client

Code:
FILE * fh_in = fopen( "C:\\UNWISE.exe", "rb" );        
BYTE Chunk[256];        
fseek( fh_in, 0, SEEK_END );        
double realsize = ftell( fh_in );     // Dateigröße ermitteln  
fseek( fh_in, 0, SEEK_SET );        
char rs[RCVBUFSIZE];        
sprintf( rs, "%f", realsize );        
rc = send( sock, rs, RCVBUFSIZE, 0 );        
while ( ( fread( Chunk, 256, 1, fh_in ) ) && ( rc > 0 ) )
   {
       rc = send( sock, Chunk, sizeof( Chunk ), 0 ); // senden
    }
fclose( fh_in );



Wie schafft man es, immer 99,9% sicher zu sein, den selben Inhalt in der anderen Datei zu finden? Zwar habe ich die "Anzahl" der zu sendenden Bytes auf 1 gesenkt, jedoch dauert das Übertragen dann bald 3 Minuten!


Danke schonmal für eure kompetente Hilfe,

-Biohazard-
--

Dieser Post wurde am 22.06.2006 um 14:04 Uhr von -Biohazard- editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: