دریافت خطای ...No connection could be made because the target machine actively در برنامه نویسی سوکت
دوستان من یک برنامه Client-Server با سی شارپ دارم که مربوط به ارسال و دریافت فایل هست. فایل از کلاینت فرستاده میشه و از سرور دریافت میشود.
برنامه به خوبی در لوکال کار میکند. یعنی وقتی آی پی 127.0.0.1 بعنوان آی پی سرور قرار میدم، بدون هیچ مشکلی کار میکنه.
ولی وقتی رو دوتا کامپیوتر جداگانه اجرا میکنم، کلاینت نمیتونه به سرور وصل بشه و خطای زیر رو میده :
نقل قول:
No connection could be made because the target machine actively refused it 127.0.0.1:xxxxx
خودم یه سرچی تو گوگل زدم، اونطور که فهمیدم مشکل از کد نیست و مربوط میشه به فایروال و این حرفها که فایروال رو هم خاموش کردم جواب نگرفتم.
پورتی هم که استفاده میکنم مطمئن هستم اشغال نیست. با دستور netstat -a چک کردم.
این هم کد مربوط به کلاینت :
Socket connector = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
IPEndPoint ie = new IPEndPoint(IPAddress.Parse(txtServerIP.Text), 12345);
ie.Address = IPAddress.Loopback;
connector.Connect(ie);
نقل قول: دریافت خطای ...No connection could be made because the target machine actively در برنامه ن
کد مربوط به سرور رو هم بگذارین.شما احیانا توی شبکه که نیمخواهین به 127.0.0.1 وصل بشین؟!
نقل قول: دریافت خطای ...No connection could be made because the target machine actively در برنامه ن
نقل قول:
نوشته شده توسط
plus
کد مربوط به سرور رو هم بگذارین.شما احیانا توی شبکه که نیمخواهین به 127.0.0.1 وصل بشین؟!
نه دوست عزیز، من اونجا آی پی سرور رو مثلا به این شکل وارد میکنم : 192.168.1.2
اون 127.0.0.1 تو متن پیغام خطا ثابت هست و ربطی به آی پی کامپیوتری که میخواییم کانکت بشیم ندارد.
در هر صورت مشکل رو خودم حل کردم. ایراد از خط سوم بود، که یه جورایی ارتباط رو فقط محدود به لوکال هاست میکرد. (ie.Address = IPAddress.Loopback)
با تشکر