دوستان یه چیزایی دستم اومد : بصورت کلی :
1. اولاً باید از مولتی تردینگ استفاده کنیم.
2. تصویر وب کم رو هر چند میلی ثانیه بگیریم (میشه یه pic) ، از طریق پروتکل UDP ارسال می کنیم و البته گیرنده هم همینطوری دریافتش میکنه ، اینجا باید یه Thread جداگانه با یه حلقه true همیشه پورت رو چک کنه.
// کامپوننت برای کار با وب کم هم پیدا کردم وقتی بصورت جزئی هم
پیادش کردم براتون میذارم.
// فقط یه مشکل کوچیک ، این کد رو نگا کنین :
public partial class Form1 : Form
{
//***********************************
System.Net.Sockets.UdpClient send, recieve;
System.Net.IPEndPoint sendpt, recievept;
//***********************************
public Form1()
{
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
try
{
string filePath = @"C:\test.gif";
FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] pic = br.ReadBytes((int)fs.Length);
fs.Close();
br.Close();
//////////////////////////
send = new System.Net.Sockets.UdpClient();
sendpt = new IPEndPoint(IPAddress.Parse("192.168.1.3"), 3333);
send.Send(pic, pic.Length, sendpt);
send.Close();
MessageBox.Show("ارسال شد");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
در این قطعه کد ، من برای تست فقط میخوام یه تصویری رو بصورت باینری ارسال کنم ، سوال من اینه که اون شماره پورتی که به عنوان ورودی به متد سازنده کلاس IPEndPoint ارسال میکنیم چیه؟ از کجا باید بدستش آورد؟ یعنی این خط کد :
sendpt = new IPEndPoint(IPAddress.Parse("192.168.1.3"), 3333);
که در اینجا اون شماره پورت 3333 هستش.
البته هنوزم 100% مطمئن نیستم این چیزایی که گفتم درست باشه ها
ولی واسه قدم اول بد نبود.