作为一个初步接触电脑的人,在学习Android的过程中,遇到各种问题,今天遇到了。这样一个错误提示:
The connection to adb is down, and a severe error has occured.
You must restart adb and Eclipse.
Please ensure that adb is correctly located at 'D:\Program Files\eclipse_AndroidDeveloper\adt-bundle-windows-x86-20130522\sdk\platform-tools\adb.exe' and can be executed.
上网查找后有两种解决方案,一是重新在Path中添加路径,二是adb.exe端口的被其他程序所占用。最后第二种方法解决了问题,是一个tadb.exe的进程占用了Android开发中adb.exe的端口。tadb.exe是Tencent安卓设备连接电脑时的驱动程序。结束该进程后,上面的错误完美解决,具体解决方案来自:
http://blog.csdn.net/lg279908129/article/details/7759789
里面使用了命令行参数。于是自己便顺便学一下DOS的相关命令,查阅资料整理如下:
第一部分(参考自百度百科以及微软MSDN):
-------------------------------------------------------------------------------
netstat大概是Net State(网络状态)的缩写。
在DOS环境下,输入:netstat /? 将显示所有可用命令(不用记啊,嘿嘿……当然记住了更好),netstat常用有如下命令:
netstat[-a] [-e] [-n] [-o] [-pProtocol] [-r] [-s] [Interval]
侦听来自远方的TCP端口的连接请求
在发送连接请求后等待匹配的连接请求
在收到和发送一个连接请求后等待对方对连接请求的确认
代表一个打开的连接
等待远程TCP连接中断请求,或先前的连接中断请求的确认
从远程TCP等待连接中断请求
等待从本地用户发来的连接中断请求
等待远程TCP对连接中断的确认
等待原来的发向远程TCP的连接中断请求的确认
等待足够的时间以确保远程TCP接收到连接中断请求的确认
没有任何连接状态
要同时显示以太网统计信息和所有协议的统计信息,请键入下列命令:
netstat -e -s
要仅显示 TCP 和 UDP 协议的统计信息,请键入下列命令:
netstat -s -p tcp udp
要每 5 秒钟显示一次活动的 TCP 连接和进程 ID,请键入下列命令:
netstat -o 5
要以数字形式显示活动的 TCP 连接和进程 ID,请键入下列命令:
netstat -n –o
各个端口占用
netstat -a –n
各个端口占用和进程PID
netstat –ano
对其中进程进行筛选(比如筛选出端口为5037的进程):
netstat -aon | findstr "5037" 注意findstr与"5037" 之间有一个空格。
注:各个命令使用如netstat –a –n –o 与netstat -ano是等价的
第二部分(参考自:http://www.computerhope.com/taskkill.htm):
-------------------------------------------------------------------------------
TastList命令:
在DOS窗口中输入tasklist,如下:
将会出现进程名称,PID等属性值。我们可以通过这个命令来查看各个进程对应的PID。
注:对PID对应的进程名进行查看(如PID为4632的进程对应的进程):
tasklist | findstr "4632"
TaskKill命令:notepad.exe
taskkill /f /im notepad.exe
附:比如要解决本文开头出现的问题,就可以:
1:netstat|findstr "5037"
2:然后找到被占用监听端口的进程端口(比如为8008)
3:查看该端口的进程名
tasklist|findstr “8008”
显示为tadb.exe
4:结束这个进程
taskkill /f /im tadb.exe
5:如果成功将会输出:
成功: 已终止进程 "tadb.exe",其 PID 为xxxx。