|
안녕하세요...
C/S 프로그램에서요 클라이언트에서 서버에게
파일을 보낼려구 합니다...
여기서 제가 사용한 방법은(Client에서)
TFileStream* inHandel;
unsigned char *pszBuffer;
inHandle = new TFileStream("c:\\test.hwp", fmOpenRead);//test.hwp 파일을 읽는다,
pszBuffer = new char[inHandle->Size];
inHandle->ReadBuffer(pszBuffer, inHandle->Size);//읽은 파일을 pszBuffer 버퍼에 넣는다.
Socket->SendBuf(pszBuffer, inHandle->Size);//pszBuffer 버퍼를 서버로 보낸다.
서버에서...
TFileStream* outHandle;
unsigned char *pszBuffer;
pszBuffer = new char[Socket->ReceiveLength()];
outHandle = new TFileStream("c:\\server.hwp", fmCreate);//저장할 hwp파일을 만든다
Socket->ReceiveBuf(pszBuffer,Socket->ReceiveLength());//클라이언트에서 받은 버퍼를
//pszBuffer에 넣는다
outHandle->WriteBuffer(pszBuffer,200); //pszBuffer에 내용을 Server.hwp로 저장한다.
...
이상이거든요
여기서 서버에 저장되는 파일이 '0바이트'가 되요....
왜 '0바이트'가 되나여?
제가 쓰는 방법이 잘 못된 방법이면 C/S간에 파일 전송하는 방법을 자세히 좀 알려주세요...
이왕이면 소스와 함께 설명해 주시면 고맙구요...
제발 도와 주세요...
|