PDA

View Full Version : خواندن از پورت خاص



resident
دوشنبه 17 دی 1397, 22:04 عصر
سلام.
من میخوام از پورت خاصی مثلا پورت 2005 بخونم.
از کد زیر استفاده کردم

TcpListener server = null;


Int32 port = 2005;
//IPAddress localAddr = IPAddress.Parse("127.0.0.1");
var host = Dns.GetHostEntry(Dns.GetHostName());
IPAddress localAddr = IPAddress.Parse("127.0.0.1");
foreach (var ip in host.AddressList)
{
if (ip.AddressFamily == AddressFamily.InterNetwork)
{
localAddr= IPAddress.Parse(ip.ToString());
}
}


server = new TcpListener(localAddr, port);

server.Start();




در server.Start(); خطای زیر رو دارم.
An attempt was made to access a socket in a way forbidden by its access permissions


ممنونم میشم راهنمایی کنید. آیا روشی که استفاده کرم برای خوندن اطلاعات، درسته؟؟؟

رامین مرادی
سه شنبه 18 دی 1397, 13:26 عصر
احتمالا فایروال سیستمتون گیر میده.

مهدی کرامتی
چهارشنبه 19 دی 1397, 10:02 صبح
سلام.
من میخوام از پورت خاصی مثلا پورت 2005 بخونم.
از کد زیر استفاده کردم

TcpListener server = null;


Int32 port = 2005;
//IPAddress localAddr = IPAddress.Parse("127.0.0.1");
var host = Dns.GetHostEntry(Dns.GetHostName());
IPAddress localAddr = IPAddress.Parse("127.0.0.1");
foreach (var ip in host.AddressList)
{
if (ip.AddressFamily == AddressFamily.InterNetwork)
{
localAddr= IPAddress.Parse(ip.ToString());
}
}


server = new TcpListener(localAddr, port);

server.Start();




در server.Start(); خطای زیر رو دارم.
An attempt was made to access a socket in a way forbidden by its access permissions


ممنونم میشم راهنمایی کنید. آیا روشی که استفاده کرم برای خوندن اطلاعات، درسته؟؟؟


سلام
روش درست است، اما در دو حالت چنین پیامی می گیرید:

اون پورت قبلا روی سیستم شما توسط برنامه دیگه ای در حال خواندن باشه.
موقع تست برنامه، ویژوال استودیو رو Run as Administrator نکرده اید.