2017-07-04 15 views
1

我正在尝试调试使用NetworkIsolationEnumAppContainers()的代码。功能文档说,什么是Windows上的应用程序容器?

"The NetworkIsolationEnumAppContainers function enumerates all of the app containers that have been created in the system." 

上面定义中的app容器是什么意思?我有一些Linux容器技术方面的经验(特别是LXC)。它们是否相同(或概念相似)?您能否指出我的文档,其中提供了应用容器的深入技术描述。

+1

这是一个逻辑概念,代表了沙箱,其中UWP应用程序运行。它主要充当安全边界,确保应用程序无法做任何违反清单中所要求功能的事情。让人们从商店下载这样的应用感觉很好。您可以简单地将它替换为“UWP过程”。 –

回答

1

AppContainers是控制UWP应用程序可以访问或不可访问的资源的沙箱机制。 UWP应用程序只能访问文件系统,注册表等的有限部分...应用程序容器也执行一些关于网络连接的规则。例如,UWP应用程序无法访问本地主机。网络功能是由UWP应用程序的清单驱动的,UWP应用程序必须声明它想要执行的操作(客户端,客户端+服务器)。根据应用程序的声明,服务器将允许或不允许网络。

你应该能够找到更详细的信息在这里:

+0

这是否意味着一些UWP应用程序将被NetworkIsolationEnumAppContainers()检测到,有些则不会。即使所有UWP应用程序都有相关联的容器,但有些可能与网络没有任何关系,因此可能无法使用此API检测到。我试图解决的问题是一些UWP应用程序未被检测到。 –

+0

这就是我猜测的。没有任何网络功能的UWP应用程序没有任何理由暴露于网络隔离层(即使它们仍在应用程序容器中)。 – Vincent

相关问题