UWP 创建 *** 连接
Posted
技术标签:
【中文标题】UWP 创建 *** 连接【英文标题】:UWP create *** connection 【发布时间】:2018-04-27 02:38:12 【问题描述】:目前我正在尝试弄清楚如何添加 *** 配置文件并从我的通用应用程序连接到它。我可以使用 Windows.Networking.***
命名空间连接到现有的 *** 连接。我也可以添加配置文件,但找不到设置所有必需信息的方法(例如 PSK)。 MS 文档中没有关于此命名空间的文档。我还看到有两个不同的配置文件命名空间可用:***NativeProfile
和 ***PlugInProfile
。它们之间有什么区别?目前我不在家,所以我无法提供我当前的代码,但如果有人能给我一些提示,那将非常有帮助。其他地方有可用的文档吗?
编辑 1// 这是我的示例代码
创建个人资料
***ManagementAgent mgr = new ***ManagementAgent();
***NativeProfile profile = new ***NativeProfile()
AlwaysOn = false,
NativeProtocolType = ***NativeProtocolType.L2tp,
ProfileName = "MyConnection",
RememberCredentials = true,
Require***ClientAppUI = true,
RoutingPolicyType = ***RoutingPolicyType.SplitRouting,
TunnelAuthenticationMethod = ***AuthenticationMethod.PresharedKey,
UserAuthenticationMethod = ***AuthenticationMethod.Mschapv2,
;
profile.Servers.Add("***.example.com");
***ManagementErrorStatus profileStatus = await mgr.AddProfileFromObjectAsync(profile);
连接到 ***
PasswordCredential credentials = new PasswordCredential
UserName = "username",
Password = "password",
;
***ManagementErrorStatus connectStatus = await mgr.ConnectProfileWithPasswordCredentialAsync(profile, credentials);
这可行,但我不知道在哪里或如何设置 PSK。
【问题讨论】:
win-universal-app
标签应与使用的操作系统(Windows 8.1 或 Windows 10)结合使用。
用示例代码编辑了问题。
我运行了您的代码,但它并没有在我这边创建新的连接。我在 Connections 中看不到任何内容(在 Windows 10 中)。基本上,这个 Native Profile 只允许你将你的 UWP 应用程序连接到 ***?或者它允许您通过 *** 路由来自整个计算机的全部流量?
对不起,这是我的错,您必须设置“Require***ClientAppUI = true”才能看到连接。不,它应该允许通过 *** 的所有流量路由,但您也可以使用带有“RoutingPolicyType”设置的拆分隧道。
好的,谢谢您的回答。在我这边,当我尝试连接时,***ManagementErrorStatus 设置为“其他”。你也遇到同样的错误吗?
【参考方案1】:
*** 原生配置文件:这是指 Windows 收件箱/内置 *** 配置文件,可用于基于 L2TP、PPTP 或 IKEv2 的 ***
*** 插件配置文件:指基于 Windows 10 UWP 的 *** 插件。这是一个使用 Windows.networking.*** 命名空间编写的 *** 应用程序。
我还查看了代码,可以看到似乎有一个非常明显的遗漏,其中没有真正通过代码设置 PSK 的方法。唯一真正的解决方法是暂时在设置 UI 中进行设置。
我会继续向 Windows 的 *** 团队报告这个丢失的情况。
文档链接:https://docs.microsoft.com/en-us/uwp/api/windows.networking.***
【讨论】:
谢谢阿曼阿内哈。还可以从 xml 字符串添加新的 *** 连接。也许它会以这种方式工作,设置 PSK,但我找不到这样的 xml 的完整示例。 不幸的是,我认为 AddProfileXMLAsync 函数也存在一个突出问题。也向团队报告了这一点 好的,谢谢。是的,经过一些测试,我发现每次的状态都是“AccessDenied”。 Aman Arneja:如果您能帮助我们解决这个问题,那就太好了。有更多人需要 UWP *** 功能的示例代码,尤其是 *** Native Profile。 我确实有一些工作示例,我可以将它们放在 git repo 中并尽快分享。同时,您是否需要帮助的特定配置?以上是关于UWP 创建 *** 连接的主要内容,如果未能解决你的问题,请参考以下文章
[UWP]如何使用代码创建DataTemplate(或者ControlTemplate)