StreamSocket.ConnectAsync抛出异常" HRESULT:0x8007274C"使用VPN时

时间:2014-06-12 09:16:39

标签: c# windows-store-apps

问题:虽然没有使用VPN,但下面的代码运行正常。一旦我通过VPN连接到我的家庭网络,代码就会抛出异常(翻译自德语):

连接尝试失败,因为连接方在一段时间后没有正确响应,或者由于连接主机无法响应而建立连接失败。 (HRESULT异常:0x8007274C)。

目标“192.168.180.58”是我家庭网络中的另一台计算机。

Windows应用商店测试代码:

private async void createConnection(object sender, RoutedEventArgs e)
{
  HostName target = new HostName("192.168.180.58");
  string port = "8181";
  using (StreamSocket client = new StreamSocket())
  {
    try
    {
      await client.ConnectAsync(target, port);
    }
    catch (Exception ex)
    {
      string typeName = ex.GetType().Name;
      string msg = ex.Message;
    }
  }
}

我创建了一个Windows控制台程序(.NET 4.5.1),它在两种情况下均可使用(通过使用vpn连接而不使用vpn)。

Windows控制台测试代码:

namespace caPing
{
  class Program
  {
    static void Main(string[] args)
    {
      string target = "192.168.180.58";
      int port = 8181;

      TcpClient client = new TcpClient();
      try
      {
        client.Connect(target, port);
        client.Close();
      }
      catch (Exception ex)
      {
        Console.WriteLine(ex.Message);
        throw;
      }
    }
  }
}

看起来问题与Windows应用商店应用程序的执行环境有某种关系(使用vpn时)。

这里有什么问题,如何解决?

亲切的问候,

Sörnt

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题然后我发现了

We can not keep two app running at the same time.

如果Server应用程序正在运行,然后运行客户端应用程序,则服务器应用程序将

暂停,客户端应用程序将失败并显示连接。

您可以将服务器应用程序创建为桌面应用程序,以便客户端和

服务器可以同时运行。

来自MSDN Here