델파이2010을 사용하는데요.
IDMPCastServer와 IDMPCastClient로 파일을 전송하려다 용량이 1메가 이상만 되도 에러가 나서 포기하고
IdUDPServer와 IdUDPClient로 바꾸어 보았습니다.
프로시저 선언은
IdUDPClient1.SendBuffer(Const ABuffer : TBytes);
이렇고요.
파일 전송하는 소스일부인데요.
Var
FileName : String;
buf : TBytes;
Begin
.....
FileStream := TFileStream.Create('MyFile.dat', fmOpenRead);
FileStream.ReadBuffer(Buf, FileStream.Size); <======= 에러부분
IdUDPClient1.SendBuffer(Buf);
......
end;
이렇게 했는데 에러가 납니다.
인터넷을 뒤져 샘플코드를 찾아보면
IdUDPClient1.SendBuffer(Const ABuffer : TBytes);
가 아니고
IdUDPClient1.SendBuffer(Const ABuffer : TStream);
이렇게 선언이 되어 있어 FileStream을 YBytes형으로 변환해서 보내야 할것 같은데 안되요.
컴파일에는 이상이 없는데 막상 실행해 보면 데이터를 보낼때 에러가 납니다.
이렇게 저렇게 해봐도 도저히 안됩니다.
도움 좀 부탁드립니다.
|