端口被System pid:4占用的解決方式:修改服務使用的端口,不禁用服務


一、問題描述:

  端口被系統system,pid[4] 占用的,無法使用兩步走的傳統常用命令解決,即:

  netstat -ano|findstr "端口號"
  taskkill /pid [查詢的pid] -F

          圖 1-1

 

           圖 1-2

 

[注] 筆者被占用的端口是9001,故以9001端口來做截圖說明,同時本機也沒有SQL Server Reporting Services。

[注] 筆者的方法(在頁尾補充章里)應該適用於大部分解決 被系統占用端口 的思路。

 

二、解決方案:

1:輸入  netsh http show servicestate  查詢http服務狀態快照;

           圖 2-1

 

2:輸入 tasklist|findstr "pid" 查看占用端口號的應用程序

            圖 2-2

 

3:輸入 taskkill /pid [查詢的pid-] -F  或 taskkill /f /t /im ****.exe

     前者是根據殺死占用端口的pid來釋放端口, 后者則是殺死占用端口的應用程序來釋放端口。筆者用的前者。

             圖 2-3

 

三、整體圖:

                          圖 3-1

 

四、補充:

重啟后端口再次被占用,所以這一次在殺死進程以前,先去看了一下這個服務究竟是做什么的。

                            圖 4-1

 

占用端口的是顯卡服務,不知道是做什么的,也不敢請輕易禁用/關閉,轉到詳細情況里,發現這個服務支撐的是:OneApp.IGCC.WinService.exe。

於是通過右鍵屬性-> 位置信息,找到了這個客戶端所在的文件夾。

                            圖 4-2

 

在這個配置文件里找到了與port相關的屬性:

        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:9001/igcc/service"/>
            <add baseAddress="net.tcp://localhost/igcc/service"/>
          </baseAddresses>
        </host>        

 

其中 localhost:9001/igcc/service 與 圖 4-1所顯示的注冊信息完全一致,於是修改了端口號為“4658”,重啟,端口9001不再被占用,IGCC使用的端口就是筆者后來修改的端口號了。

                           圖 4-3

 

 轉載請標明出處。

一些其他經典解決方案:

非系統占用端口:https://blog.csdn.net/u011713016/article/details/15813699

系統占用端口:http://www.2cto.com/os/201505/399603.html  偏向SQL Server Reporting Services

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM