سلام
دوست عزیز در لینک زیر تمام آنچه که می خواهی هست:
https://barnamenevis.org/showthread.p...8C%D9%86%DA%AF
یا این کد رو در سمت کلاینت که می خواهد داده(عکس ارسالی از سرور) را دریافت کند بنویس:
Byte[] bytesReceived = new Byte[2048];//2kb
FileStream strm = new FileStream(file_path_save, FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter binWriter = new BinaryWriter(strm);
do
{
bytes = s.Receive(bytesReceived, bytesReceived.Length, 0);
for (int i = 0; i < bytes; i++)
binWriter.Write(bytesReceived[i]);
}
while (bytes > 0); s.close(); strm.close();
کد بالا داده را از سرور دریافت می کند و در مسیر file_path_save این داده را ذخیره می کند
متغییر file_path_save مسیر ذخیره فایل در کلاینت را مشخص می کند پس جای این متغییر یک مسیر واقعی بده.
و s هم در کد بالا یک شی از کلاس socket است
و اگه می خوای برنامه در حلقه while هنگ نکنه باید کدهای بالا را در یک متد بنویسی و متد در یک نخ اجرا شود چون متد receive تا زمانی که کل داده دریافت شه برنامه را در همان خط منتظر می گذارد.
http://msdn.microsoft.com/en-us/libr...ts.socket.aspx