007
04.12.2002, 23:15 Uhr
Uwe
C/C++ Master (Administrator)
|
Hallo Andy,
Zitat: |
Nanu! Wieso macht der aus data[z]; Nur data;?
|
Weil da das Script etwas dagegen hat :)
Irgendwo mal gefunden..., verändert..., ging schon damals nicht..., verkramst in einem Ordner..., gestern nicht gefunden..., etwas Quellcode ohne Test gepostet..., vermurkst. Mal im Ernst. Hatte ja geschrieben "etwas so". Jetzt müsste es aber funktionieren:
C++: |
/* Client */ #define PORT 3400
AfxSocketInit(NULL); CSocket sockSrvr; sockSrvr.Create(PORT); sockSrvr.Listen(); CSocket sockRecv; sockSrvr.Accept(sockRecv); CFile myFile; myFile.Open("C:\\My.exe", CFile::modeRead | CFile::typeBinary);
int myFileLength = myFile.GetLength(); sockRecv.Send(&myFileLength, 4);
byte* data = new byte[4096]; DWORD dwRead; do{ dwRead = myFile.Read(data, 4096); sockRecv.Send(data, dwRead); } while (dwRead > 0);
myFile.Close(); delete data; sockRecv.Close();
/* Server */ CFile destFile("C:\\My.exe", CFile::modeCreate | CFile::modeWrite | CFile::typeBinary); AfxSocketInit(NULL); CSocket sockClient; sockClient.Create();
sockClient.Connect("127.0.0.1", PORT);
int dataLength; sockClient.Receive(&dataLength, 4); DWORD dwRead; byte* data = new byte[4096]; do{ dwRead = sockClient.Receive(data, 4096); destFile.Write(data, dwRead); } while (dwRead > 0);
destFile.Close();
delete data; sockClient.Close();
|
-- "Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."
Bis dann... Uwe Dieser Post wurde am 04.12.2002 um 23:20 Uhr von Uwe editiert. |