與 localhost (回送) 通訊
在 Windows IoT 核心版上,如果您想要在相同裝置上執行的兩個進程之間建立 TCP/IP 連線,其中一個進程是 UWP 應用程式,您必須啟用 localhost 回送。
回送和偵錯工具
根據預設,在 Visual Studio 偵錯工具下執行 只會針對該偵錯會話自動啟用輸出回送。 只要啟動專案的偵錯工具設定中核取回送核取方塊,就不應該執行任何動作。 如果您想要實作通訊端接聽程式,您必須為輸入連線啟用 localhost 回送, (請參閱下列) 。
啟用輸入回送原則
必須針對實作伺服器的 UWP 應用程式啟用 Windows IoT 核心 版的 localhost 輸入回送原則。 此原則是由下列登錄機碼所控制:
[HKEY_LOCAL_MACHINE\system\currentcontrolset\services\mpssvc\parameters]
"IoTInboundLoopbackPolicy"=dword:00000001
此 IoTInboundLoopbackPolicy 登錄機碼值必須設定為 dword:00000001才能啟用。 如果您變更 IoTInboundLoopbackPolicy 登錄值,則必須重新開機,變更才會生效。 Windows IoT 核心版上預設應啟用 localhost 回送原則
若要確認值已設定,請在 Windows IoT 核心版 裝置上執行下列命令:
reg query hklm\system\currentcontrolset\services\mpssvc\parameters /v IoTInboundLoopbackPolicy
若要啟用原則,請在 Windows IoT 核心版 裝置上執行下列命令:
reg add hklm\system\currentcontrolset\services\mpssvc\parameters /v IoTInboundLoopbackPolicy /t REG_DWORD /d 1
啟用 UWP 應用程式的回送
您必須先有套件系列名稱,才能啟用應用程式的回送。 您可以執行 iotstartup 清單來尋找已安裝應用程式的套件系列名稱。 如果應用程式的 iotstartup 清單 專案IoTCoreDefaultApp_1w720vyc4ccym!應用程式接著會IoTCoreDefaultApp_1w720vyc4ccym套件系列名稱
若要啟用用戶端連線的回送,請使用 CheckNetIsolation.exe LoopbackExempt -a -n=<AppContainer or Package Family>
。 CheckNetIsolation.exe會設定應用程式的回送並結束。 這可讓應用程式對伺服器進行輸出連線。
範例: CheckNetIsolation.exe LoopbackExempt -a -n=IoTCoreDefaultApp_1w720vyc4ccym
若要讓伺服器應用程式能夠接收輸入連線,請使用 CheckNetIsolation.exe LoopbackExempt -is -n=<AppContainer or Package Family>
。 不同于輸出連線設定,當伺服器應用程式收到連線時,輸入連線需要CheckNetIsolation.exe持續執行。 這需要比 10.0.14393 更新的 OS 組建。
範例: CheckNetIsolation.exe LoopbackExempt -is -n=IoTCoreDefaultApp_1w720vyc4ccym
在啟動時自動執行CheckNetIsolation.exe的最佳方式是使用schtasks.exe: schtasks /create /tn MyTask /f /sc onstart /ru system /tr "checknetisolation LoopbackExempt -is -n=IoTCoreDefaultApp_1w720vyc4ccym"
重新開機時,您應該能夠使用 tlist.exe 或Windows Device Portal確認checknetisolation.exe正在執行