怎么禁止指定端口

jishengzu 2009-10-02 04:50:21
怎么禁止指定端口!

如2817端口 该端口已被程序占用,怎么禁止它,同时不关闭占用端口的程序
...全文
215 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
jishengzu 2009-10-05
  • 打赏
  • 举报
回复
谢了 虽然没答案但是分一定要给的 就当时辛苦分了
24K純帥 2009-10-05
  • 打赏
  • 举报
回复
up。。8L的可行
lzsh0622 2009-10-05
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 a8352081 的回复:]
8楼的,用tcplistenr就可以判断有没有被占用了,哪用这么麻烦?
[/Quote]

请12楼把实现同样功能的代码贴上来,比较一下,效率高低?麻烦与否?就更明显了。
lzsh0622 2009-10-04
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 jishengzu 的回复:]
8L的那个是查询某范围的端口被占用而已 没什么用啊
[/Quote]

5楼的描述是什么意思?说清楚点,省得其他人再浪费时间。
jishengzu 2009-10-04
  • 打赏
  • 举报
回复
8L的那个是查询某范围的端口被占用而已 没什么用啊
jishengzu 2009-10-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wuyq11 的回复:]
可使用[DllImport("iphlpapi.dll")]
        private static extern int SetTcpEntry(ref MIB_TCPROW pTcpRow);


[/Quote]

能给个完整的列子吗
lzsh0622 2009-10-04
  • 打赏
  • 举报
回复
已经占用的端口,无法再占用了。不是释放这个端口,就是你再换个端口。

回复5楼的问题:查端口被占用(或未被占用)的情况。

private void button3_Click(object sender, EventArgs e)
{
Process p = new Process();
p.StartInfo = new ProcessStartInfo("netstat", "-a");
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true; //设置不显示DOS窗口

p.Start();
string result = p.StandardOutput.ReadToEnd();
for (int i = 4000; i <= 8000; i++)
{
if (result.IndexOf(Environment.MachineName.ToLower() + ":" + i) >= 0) MessageBox.Show(i + "端口被占用");
//if (result.IndexOf(Environment.MachineName.ToLower() + ":" + i) == -1) MessageBox.Show(i + "端口没被占用");
}
}
a8352081 2009-10-04
  • 打赏
  • 举报
回复
8楼的,用tcplistenr就可以判断有没有被占用了,哪用这么麻烦?
wuyq11 2009-10-04
  • 打赏
  • 举报
回复
可使用[DllImport("iphlpapi.dll")]
private static extern int SetTcpEntry(ref MIB_TCPROW pTcpRow);

jishengzu 2009-10-04
  • 打赏
  • 举报
回复
上面没答案的话 那写一个占用指定端口的程序应该可以吧
jishengzu 2009-10-02
  • 打赏
  • 举报
回复
或者值写以个占用某个范围的端口到某个范围端口的例子

范围的端口到某个范围端口 这些端口没被占用的
jishengzu 2009-10-02
  • 打赏
  • 举报
回复
那强制占用指定端口可以吗 那端口已经被占用的
a8352081 2009-10-02
  • 打赏
  • 举报
回复
不清楚,帮顶
鸭梨山大帝 2009-10-02
  • 打赏
  • 举报
回复
还有个方法就是用API + 汇编(C#不支持内联汇编),CALL 该进程的断开连接的ASM代码... ...
(如果程式做了处理,网络断开就结束掉自身,这就无法避免了)

[Quote=引用楼主 jishengzu 的回复:]
怎么禁止指定端口!

如2817端口 该端口已被程序占用,怎么禁止它,同时不关闭占用端口的程序
[/Quote]
鸭梨山大帝 2009-10-02
  • 打赏
  • 举报
回复
"如2817端口 该端口已被程序占用,怎么禁止它,同时不关闭占用端口的程序"
查看哪个进程占用了这个端口,把这个进程杀掉才行.
比如80端口,如果你不停用IIS(如果指定的是80的话),这个端口会一直被IIS服务占用.




110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧