如何用c#查看端口被哪个进程占用
小虾写了个端口扫描软件,可以发现有哪些端口是开放的,请问,如何看看这些端口被哪些程序占用或者打开?谢谢。可以具体一点吗?这两个文件又保存在哪里呢?...
小虾写了个端口扫描软件,可以发现有哪些端口是开放的,请问,如何看看这些端口被哪些程序占用或者打开?谢谢。
可以具体一点吗?这两个文件又保存在哪里呢? 展开
可以具体一点吗?这两个文件又保存在哪里呢? 展开
展开全部
用System.Diagnostic.Process.Start,运行netstat -o > net.txt和tasklist > process.txt,得到关于端口和进程PID对应的列表文本文件net.txt,以及软件名和PID对应的列表文本文件process.txt。
*********
第一个命令得到所有端口被那个PID占用的信息,保存为文件
第二个命令得到所有PID和进程名称的对应信息,保存为文件
你再读取这两个文件,将端口直接对应到进程名称,列出即可
*******
保存到哪里随你啊,难道你说的不是本机?那我回答的就有问题了,要扫描别的机器,要用Socket,变换端口进行数据包发送。
只要你保存的文件能读到,能分析就可以了。
之所以保存到文件,是因为dos命令只能重定向到文件、打印机等,不可能直接到内存
*********
第一个命令得到所有端口被那个PID占用的信息,保存为文件
第二个命令得到所有PID和进程名称的对应信息,保存为文件
你再读取这两个文件,将端口直接对应到进程名称,列出即可
*******
保存到哪里随你啊,难道你说的不是本机?那我回答的就有问题了,要扫描别的机器,要用Socket,变换端口进行数据包发送。
只要你保存的文件能读到,能分析就可以了。
之所以保存到文件,是因为dos命令只能重定向到文件、打印机等,不可能直接到内存
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto...
点击进入详情页
本回答由Storm代理提供
展开全部
@echo off
set /p inputPID=[请输入端口号:]
netstat -ano | findstr ":%inputPID%">inputPID.忆林子
FOR /F "tokens=1,2,3,4,5" %%i IN ('more inputPID.忆林子') DO (
for /f "delims=: tokens=1,2" %%a in ("%%j") do (
if /i "%%b"=="%inputPID%" (
if /i "%%m" neq "" tasklist /fi "pid eq %%m"
if /i "%%m"=="" tasklist /fi "pid eq %%l"
)
)
)
if exist inputPID.忆林子 del inputPID.忆林子 /q
PAUSE
set /p inputPID=[请输入端口号:]
netstat -ano | findstr ":%inputPID%">inputPID.忆林子
FOR /F "tokens=1,2,3,4,5" %%i IN ('more inputPID.忆林子') DO (
for /f "delims=: tokens=1,2" %%a in ("%%j") do (
if /i "%%b"=="%inputPID%" (
if /i "%%m" neq "" tasklist /fi "pid eq %%m"
if /i "%%m"=="" tasklist /fi "pid eq %%l"
)
)
)
if exist inputPID.忆林子 del inputPID.忆林子 /q
PAUSE
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询